1. 分支结构
1.1 if单分支结构
如果xxx就xxx(满足某个条件才执行某个操作,这个条件不满足这个操作就不执行)
语法
if 条件语句:
代码段
说明
a. if:关键字;固定写法
b. 条件语句:条件对应的代码(必须是一个有结构的表达式)
c. 冒号:固定写法(必须是英文输入法下的冒号)
d. 代码段:结构上就是和if保存一个缩进的一条或者多条语句,至少一条
逻辑上代码段就是满足条件才会执行的代码
执行过程
先判断条件语句是否成立,如果成立就执行代码段,否则代码段就不执行
# 案例:如果score的值大于80分就打印'通过'
score = 87
if score > 80:
print('通过')
# 练习1:根据num的值打印'奇数'
num = 79
if num % 2 != 0:
print('奇数')
# 练习2:判断指定的三位数是否是水仙花数,如果是就打印'水仙花'
num = 370
if (num // 100) ** 3 + (num % 10) ** 3 + (num // 10 % 10) ** 3 == num:
print('水仙花')
1.2 if双分支结构
如果xxx就xxx,否则就xxx(满足条件就执行某个操作,条件不满足的时候执行另外的操作)
语法:
if 条件语句:
代码段1(满足条件需要执行的代码)
else:
代码段2(不满足条件的时候需要执行的代码)
# 练习1:根据num的值打印'奇数'或者'偶数'
num = 98
if num % 2 == 0:
print('偶数')
else:
print('奇数')
# 练习2:根据age打印'成年'或者'未成年'
age = 26
if age > 18:
print('成年')
else:
print('未成年')
# 练习3:如果num大于10就减5否则加5
num = 98
if num > 10:
num -= 5
else:
num += 5
print(num)
1.3 if多分支结构
如果xxx就xxx,如果xxx就xxx,如果xxx就xxx,...(根据不同的条件做不同的事情)
方法1:直接使用多个if单分支结构(如果一个条件成立,其他条件也可能成立的时候用)
if 条件语句1:
代码段1
if 条件语句2:
代码段2
if 条件语句3:
代码段3
方法2:使用if-elif结构(如果其中一个条件成立,其他条件绝对不会成立的时候用)
if 条件语句1:
代码段1
elif 条件语句2:
代码段2:
elif 条件语句3:
代码段3
...
else:
代码段N
执行特点:后面的条件是在前面的条件不成立的情况下进行判断
score = 95
if score == 100:
print('买车')
elif 90 <= score:
print('买鞋')
elif 80 <= score:
print('吃火锅')
else:
print('打死')
num = 90
if num % 5 == 0:
print('5的倍数')
elif num % 2 == 0:
print('偶数')
else:
print('奇数')
2. for循环
2.1 for循环
语法:
for 变量 in 序列:
循环体
说明
a. for:关键字;固定写法
b. 变量:变量名
c. in:关键字;固定写法
d. 序列:容器型数据类型的数据就是序列;常见的容器型数据:字符串,列表,元组,集合,字典,迭 代器,生成器,range等
e. 冒号:固定写法
f. 循环体:结构上就是和for保持一个缩进的一条语句或者多条语句,至少一条;
逻辑上需要重复执行的代码
执行过程
让变量去序列中取值,一个一个的取,取完为止,每取一个值就执行一次循环体
循环次数由序列中元素的个数决定
2.2 range函数
range(N):创建[0, N)的等差数列,差是1
range(M, N):创建[M, N)的等差数列,差是1
range(M, N, step):创建[M, N)的等差数列,差是step
for x in range(5):
print(x)
for x in range(5, 10):
print(x)
for x in range(5, 20, 2):
print(x)
# 练习:写出以下等差数列对应range函数
# 0, 1, 2, 3, 4, 5
# 1, 3, 5, 7, 9, 11
# 90, 100, 110, 120, 130
# 9, 8, 7, 6, 5
# 19, 16, 13
# 2, 1, 0, -1, -2
for x1 in range(6):
print(x1)
for x2 in range(1, 12, 2):
print(x2)
for x3 in range(90, 131, 10):
print(x3)
for x4 in range(9, 4, -1):
print(x4)
for x5 in range(19, 12, -3):
print(x5)
for x6 in range(2, -3, -1):
print(x6)