条件语句
条件语句是通过一条或多条语句的执行结果(True or False)来决定执行的代码块
任何非0和非空值为True
0或null为False
if
条件复合语句,以关键字开始,每个条件以冒号:结束,然后缩行,表示满足条件后需要进行的动作
格式:
if express: action elif express: action ... else: action
express条件成立(为True)时,执行下面缩进的action动作,elif表示多个并行条件,else表示条件不成立(为False)时,要执行的action;
示例:
根据用户输入的内容,输出其对应权限
admin:超级管理员
user:普通用户
guest:访客
其他:提示没有此用户
#!/usr/bin/env python # -*- coding:utf8 -*- # name = input('请输入用户名:') if name == 'admin': print('超级管理员') elif name == 'user': print('普通用户') elif name == 'guest': print('访客') else: print('没有此用户')
如果需要对多个条件进行同时判断时,可以使用or,and:
or:表示两边的条件有一个成立即为真;
and:表示两边的条件需要都成立才为真;
当if有多个条件可使用小括号来区分判断的先后顺序,括号优先,其次比较符号,最后and或or
下面示例:
1, num = 9 if num >= 0 and num <= 10: print("hello") 运行结果: hello
2, num = 10 if num < 0 or num > 10: print('hi') else: print('no') 运行结果: no
3, num = 8 if (num >= 0 and num <= 5) or (num >= 10 and num <= 15): print('hello') else: print('no') 运行结果: no
循环语句
循环语句允许我们在执行一个语句或多个语句的时候,多次执行,一般有for循环和while循环
while循环语句
在给定的判断条件为Ture时执行循环体,否则退出循环体
格式:
while 条件: 动作1 动作2 跳出循环后的动作
示例:
1,打印出1-100的所有数
#!/usr/bin/env python # -*- coding:utf-8 -*- # a = 1 while a <= 100: print(a) a = a + 1
2,有一个列表,将里面的数字大于50的数字以列表形式保存在a里面,小于等于50的数字以列表形式保存在b里面
numbers = [12, 37, 5, 10, 50, 60, 66, 70, 88, 99, 1000] a = [] b = [] for i in numbers: if i > 50: a.append(i) elif i <= 50: b.append(i) print(a) print(b) 运行结果: [60, 66, 70, 88, 99, 1000] [12, 37, 5, 10, 50]
while ... else...
表示在循环条件为False时执行else语句
for循环
可以遍历给定的有序的值,如一个列表或一组字符串
格式:
for 变量 in 列表或字符串: 动作 遍历结束后动作
示例:
打印出字符串Python包含的所有字母
#!/usr/bin/env python # -*- coding:utf-8 -*- # for i in "Python": print(i)
for ... else...
表示在for循环正常执行完毕后,执行else的条件,即for循环没有被break等意外中断
示例:
打印1-100内所有的奇数
for i in range(1, 100): if i % 2 != 0: print(i) else: pass else: print('---> 奇数')
循环控制
循环控制语句可以改变循环执行的顺序,在达到某一条件后,直接跳出循环或进入下一个循环
有continue和break
break:终止整个循环
示例:
打印出字符串Python的前4个字母
#!/usr/bin/env python # -*- coding:utf-8 -*- # for i in "Python": if i == 'h': break print(i)
continue:跳出本次循环,无论当前循环是否循环结束,直接进入到下一个循环
可以理解成一个删除的效果,为了删除满足循环条件下的某些不需要的条件
示例:
打印出字符串Python的每一个字母,除了h
#!/usr/bin/env python # -*- coding:utf-8 -*- # for i in "Python": if i == 'h': continue print(i)
pass:不做任何动作,一般用来做占位语句
循环条件语句混合使用:
允许一个循环体里面嵌套入另一个循环
格式:
for 变量 in 列表: for 变量 in 列表: 动作 动作 或 for 变量 in 列表: while 条件: 动作 while循环结束后的动作 for循环结束后的动作
else的用法:
表示整个循环全部执行完成后执行else的条件
for .. in ..:
...
else:
...
当for循环不被break打断,就会执行else的条件代码
while .. :
...
else:
...
当while循环不被break打断,就会执行else的条件代码