循环之while循环
基本循环:
while 条件: 循环体 #如果条件为真,则执行循环体 #如果条件为假,则不执行循环体,结束循环
while循环的终止方式:
1. 改变条件
flag = True # 定义一个标志位,赋为值逻辑真True count = 1 while flag: print("hello") if count == 5: flag = False # 修改标志位,当flag为False时,while循环条件为假,结束循环,执行循环后面的语句 count +=1 print(6666)
2. 在循环体中执行break语句
num = 1 while True: print(num) num += 1 if num > 5: break # break 跳出整个循环 print(8888)
循环之continue,只能用在循环体中(结束本次循环,开始下次循环)
num = 1 while num < 11: if num == 7:
num += 1 continue print(num) num +=1 print(666)
格式化输出(制作模板,将模板中变化的参数,用点位符代替,统一输出格式)
%在字符串中是占位符,表示先个位,%后面是格式化字符,s表示占位的数据的类型为字符串类型,d表示占位的数据类型为十进制数字,等等.……
name = input("请输入用户名:")
gender = input("请输入性别:")
job = input("请输入职业")
msg = '你的用户名%s,你的性别%s,你的职业%s' % (name,gender,job) # 最后一个%表示将前面字符串中的占位符 与%后面的元组中的元素,建立关联关系
msg = '你的用户名%(userName)s,你的职业%(job1)s,你的性别%(sex)s' % { 'userName':name,'sex':gender,'job1':job }
%(userName)s 表示取后面字典中key为userName的键对应的值,以字符串格式输出
#采用字典方式,更灵活,前面的占位符不再像元组那一样,和元组的元素在位置上必须要一一对应;而通过字典的key,来取相应的键值,位置上不需要一一对应
name = input("请输入用户名:") gender = input("请输入性别:") job = input("请输入职业") msg = '你的用户名%s,你的性别%s,你的职业%s' % (name,gender,job) # 最后一个%表示将前面字符串中的占位符 与%后面的元组中的元素,建立关联关系 print(msg) msg = '你的用户名%(userName)s,你的职业%(job1)s,你的性别%(sex)s' % { 'userName':name,'sex':gender,'job1':job } print(msg) 输出结果: C:\Python36\python.exe C:/Users/jiayong/PycharmProjects/knight_schema/day2/1.py 请输入用户名:chris 请输入性别:male 请输入职业police 你的用户名chris,你的性别male,你的职业police 你的用户名chris,你的职业police,你的性别male Process finished with exit code 0
基本运算符
算数运算
+ 加-两个对象相加
- 减-得到负数或是一个数减去另一个数
* 乘-两个数相乘或返回一个被重复若干次的字符串
/ 除-x除以y
% 取模-返回除法的余数
** 幂-返回x的y次幂
// 取整数 - 返回商的整数部分
比较运算
== 等于 - 比较对象是否 相等
!= 不等于 - 比较两个对象是否不相等
<> 不等于 - 比较两个对象是否不相等 python3.x 已经废弃了
> 大于 - 返回 x 是否大于y
< 小于 - 返回x是还否小于y。所有比较运算符返回1表示 真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。
>= 大于等于 - 返回x是否大于等于y
<= 小于等于 - 返回x是否小于等于y
赋值运算
= 简单的赋值运算符
+= 加法赋值运算符
-= 减法赋值运算符
*= 乘法赋值运算符
/= 除尘赋值运算符
%= 取模赋值运算符
**= 幂赋值运算符
//== 取整除赋值运算符
逻辑运算符
and
or
not
优先级:() > not > and > or , 同一优先级,从左往右计算
第1种情况:逻辑运算符 两边是 比较运算符
3 > 4 or 5 >3
第2种情况: 逻辑运算符 两边是 数值
5 or 3
4 and 5
对于第2种情况归纳如下:
x or y , if x is True ,return x ; else y
x and y if x is True ,return y ,else x
in,not in :
判断子元素是否在原字符串(字典,列表,集合)中: