if True: print('条件成立执行的代码') print('这个代码执行吗?')
上述代码两个print均执行
if False: print('条件成立执行的代码') print('这个代码执行吗?')
只执行第二个print
2.总结
对于未缩进的代码,无论条件是否成立均执行
1.格式
if 条件:
条件成立执行的代码
else:
条件不成立执行的代码
2. 体验
age=int(input('请输入您的年龄:')) if age<18: print('未成年') else: print('成年')
条件成立执行if下方的代码,条件不成立则执行else下方的代码
if 条件1:
条件1成立执行的代码
elif 条件2:
条件2成立执行的代码
…
else:
上述条件均不成立执行的代码
age=int(input('请输入您的年龄:')) if age<18: print('未成年') elif 18<=age<=60: print('社畜') else: print('退休老人')
格式
if 条件1:
if 条件2:
代码1
else:
代码2
只有当条件1和条件2均成立时代码1才会执行,if条件1和条件2共同构成if的嵌套
条件成立执行的表达式 if 条件 else 条件不成立执行的表达式
用三目运算符写一个取两数中较大值的代码
a=1 b=3 c=a if a>b else b print(c)
如上面的代码,a>b这个条件不成立,我们就执行else后的代码,取得b
如果a和b的值互换,a>b这个条件成立,我们执行if前的代码,取得a
从而达到取两数中较大值的作用
格式
while 条件:
条件成立执行的代码
i=1 while i<5: if i==3: print('这一题太难了,不写') continue print(f'写了第{i}道题目') i+=1
上面写的代码运行后我们会发现代码会循环输出’这一题太难了,不写’,原因是我们未对i值进行修改,导致i的值在continue执行后仍为3,所以不断输出’这一题太难了,不写’
若想改正上述问题则需要对代码进行如下修改
i=1 while i<5: if i==3: print('这一题太难了,不写') i+=1 continue print(f'写了第{i}道题目') i+=1
如果使用continue,在continue之前一定要修改计数器,否则会进入死循环
while 条件1:
条件1成立时执行的代码
while 条件2:
条件2成立时执行的代码
for 临时变量 in 序列:
重复执行的代码
str='Shakespeare' for i in str: if i=='k' break print(i)
输出结果为Sha
str='Shakespeare' for i in str: if i=='k' continue print(i)
输出结果为Shaespeare
(1)语法
while 条件:
条件成立后重复执行的代码
else:
循环正常结束后要执行的代码
(2)退出循环的方式
对于语法中的描述,可能我们会有一个疑惑,代码何时为正常结束,何时为不正常呢?接下来我们就会了解到代码退出循环的方式
1)break
i=1 while i<5: if i==3: print('这一题太难了,不写') i+=1 break print(f'写了第{i}道题目') i+=1 else: print('今天刷了好多题目,真开心')
输出结果:写了第1道题目
写了第2道题目
这一题太难了,不写
2)continue
i=1 while i<5: if i==3: print('这一题太难了,不写') i+=1 continue print(f'写了第{i}道题目') i+=1 else: print('今天刷了好多题目,真开心')
输出结果:写了第1道题目
写了第2道题目
这一题太难了,不写
写了第4道题目
写了第5道题目
由两个代码的不同输出结果我们不难看出break会使代码不正常终止,但是循环在continue控制下是可以正常结束的
(1)语法
for 临时变量 in 序列:
重复执行的代码
else:
循环正常结束后要执行的代码
(2)退出循环的方式
与while…else的语法相同