判断
Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。
其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。
else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句。
普通判断
如何表示?一般条件表达式格式: 值1 比较运算符 值2 条件表达式 返回True/False
单分支
先对【条件】进行判断,【条件成立】执行语句;否则什么都不做,例:
if 条件表达式:
执行语句
a = 3
b = 5
x = a
if a < b:
x = a
a = b
b = x
print(a, b)
双分支
先对【条件】进行判断,【条件成立】执行事件A;否则执行事件B,例:
if 条件1:
符合条件1,执行代码1
else:
代码块2
#判断奇数偶数,如果是偶数除于 2 余数为 0, 如果余数为 1 则为奇数
num = int(input("输入一个数字: "))
if (num % 2) == 0:
print(f"{num} 是偶数")
else:
print(f"{num} 是奇数")
多分支
逐个对【条件表达式】进行判断,【成立】执行对应事件;否则,执行else事件,例:
if 条件1:
代码块1
elif 条件2:
代码块2
elif 条件3:
代码块3
else:
都不符合以上所有条件,则执行该代码块条件表达式
s=88
if s<60:
print("不及格")
elif s<80:
print("及格")
elif s<90: # 一种理解A:s<90的所有情况;另外一种理解B:s<90同时满足s>=80
print('良好')
else:
print("优秀")
嵌套判断
if语句结构中的代码块再嵌套if语句结构就是嵌套判断
if 条件1:
if 条件1:
代码块1
elif 条件2:
代码块2
elif 条件3:
代码块3
else:
都不符合以上所有条件,则执行该代码块
else:
代码块2
s=58
if s<60:
print("不及格")
elif s<90: #等价于: [60,90)
if s<80: #等价于: [60,80)
print("及格")
else: #等价于: [80,90)
print("良好")
else: #等价于:[90,...大于等于90的情况
print("优秀")
条件语句
比较运算符
- 关系运算符(is in)
- 大于、小于、等于
- 大于等于
- 小于等于
逻辑运算符
- 针对布尔值运算(True False)
- 与(and)
- 或(or)
- 非(not)
三元运算判断
将多层的结构变为一层,先对【条件】进行判断,【条件成立】返回值1;否则返回值2
循环
# 三元运算
num = 9
c=num-1 if num >= 0 else num+1
print(c)
循环
for循环
基本结构
# 方式一
for 循环变量 in 序列:
代码块
# 方式二
for 循环变量 in 序列:
循环体
else: # 当for条件不满足时,执行else语句
代码
range(start, stop, step)函数
可创建一个整数列表,一般用在 for 循环中
start: 计数从 start 开始。默认是从 0 开始。range(4) 相当于 range(0,4)
stop: 计数到 stop 结束,不包括 stop。range(0,4) 表达 [0, 1, 2, 3]
step:步长,默认为1。range(0,3) 相当于 range(0, 3, 1)
有时候我们需要一个逆序的列表,这个时候我们需要指定三个参数并且step=-1即可
for i in range(100, 1, -1):
print(i)
enumerate() 函数
用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
Python 2.3. 以上版本可用,2.6 添加 start 参数。
seq = ['one', 'two', 'three']
for i, value in enumerate(seq):
print(i, value)
while循环
while循环三要素:循环变量、循环条件、循环体
在循环语句中,注意循环体中改变循环条件,否则会出现死循环(无限循环)
基本结构
# 方式一
while 条件:
循环体
# 方式二
while 条件:
循环体
else: # 当while条件不满足时,执行else语句
代码
可终止的循环
# 第一种,flag 标志位
count = 1
flag = True
while flag:
count = count + 1
if count == 101:
flag = False
# 第二种
count = 1
while count < 101:
print(count)
count = count + 1
嵌套循环
for循环体中嵌套for/while循环结构或者while循环体中嵌套while/for循环结构
for 循环变量 in 序列:
for 循环变量 in 序列:
for 循环变量 in 序列:
代码块
while 条件:
for 循环变量 in 序列:
代码块
循环控制
continue,退出本次循环,继续下一次循环
for i in range(5):
if i == 2:
continue
print(i)
break,循环如果被break打断,则直接终止
num = 0
while num < 10:
if num == 3:
break
num += 1
print(num)