python学习-04【流程控制语句】

四、流程控制语句

1、分支语句

Python 中的分支语句主要有 3 种形式, 分别是 if 语句, if…else语句和 if…elif…else语句

if 语句

1、if 和表达式之间有空格, 表达式后面有冒号( : )

ture
false
表达式
语法快
输出结果

如果表达式的知识非零的数或非空的字符串时, 也认为条件成立,即表达式的值为真 (True)

score = int(input("请输入你的分数: "))
if score >= 85:
    print('优秀!')
print('本次分数等级测试结束!')

2、定义变量 score 的值为 0, if 语句中的表达式为 score, 这种情况它的返回值为 False, 即不执行 if 语句中的代码

score = 0
if score:
    print('分数为: ', score)
print('本次分数等级测试结束!')

3、当变量作为表达式时, 如果变量的值是数字 0, 则表达式的返回值是 False, 非零则返回 True。
如果表达式中的变量是字符串, 则只有字符串为空时, 表达式的返回值才为 False, 非空的情况下返回的都是 True

str1 = ''
if str1:
    print('输出字符串:', str1)
print('人生苦短,我学Python')
  • 无论什么样的数据类型作为表达式,当它们的值为空、0 或 None 时,表达式的返回值都是 False,不会执行 if 语句中的代码。
if…else 语句

在 if…else 语句中,当不满足 if 语句的条件时,可以执行 else 后面的代码。

True
False
表达式
语句块1
输出结果
语句块2

else 不可以单独出现,必须跟在 if 语句的后面

num = int(input('请输入一个非零的整数:'))
if num > 0:
    print('你输入的是一个正整数。')
else:
    print('你输入的是一个是一个负整数。')
if…elif…else 语句

在 if…elif…else 语句中,if 和 elif 后面的表达式都需要判断真假,else 则不需要,且 elif 和 else 必须和 if 一起使用,不可以单独使用。

True
False
True
False
True
False
表达式1
语句块1
输出结果
表达式2
语句块2
...
...
语句块n
score = int(input('请输入0-100范围内的整数:'))
if score >= 85:
    print('优秀!')
elif score >= 70:
    print('良好!')
elif score >= 60:
    print('及格!')
else:
    print('不及格!')
if 语句的嵌套
print('乘客是否持有车票?')
ticket = input('请输入‘是’或‘否’:')
if ticket == '是':
    print('乘客持有车票,需要安检。')
    spray = int(input('请输入携带的防晒喷雾剂剂量(ml) : '))
    if spray > 120:
        print('防晒喷雾超过规定的剂量, 不允许携带。')
    else:
        print('防晒喷雾剂量符合规定, 允许携带。')
else:
    print('请乘客先去购买车票!')    

2、循环语句

while 循环

1、

True
False
表达式
循环体
输出结果
num = 0
while num <= 10:
    print(num)
    num += 2

2、水仙花数是一个三位数,它的每一位的立方和等于这个数的本身

num = 100
while num < 1000:
    a = num // 100
    b = num % 100 // 10
    c = num % 10
    number = a * a * a + b * b * b + c * c * c
    if number == num:
        print('%d是水仙花数' % num)
    num += 1
for 循环

1、

没有
可迭代对象中是否还有元素
取出下一个元素
循环体
输出结果
for i in range(0, 11, 2):
    print(i)

2、在使用 range() 函数时,如果只是一个参数,则表示结束值;如果有两个参数,则表示起始值和结束值,如果有 3 个参数,则最后一个参数是步长。

for i in range(0, 11, 2):
    print(i, end = ' ')

3、遍历字符串:

str1 = '人生苦短'
list1 = []
for i in str1:
    list1 += i
print(list1)
循环嵌套

九九乘法表:

for i in range(1, 10):
    for j in range(1, i + 1):
        print('%d * %d = %d' % (j, i, i * j), end = '\t')
    print()	#换行

3、跳转语句

break 语句
for i in range(1, 20 ,2):
    if i > 10:
        break
    print(i)
print('这是循环之外的程序。')

break 语句可以让程序随时跳出循环的限制,继续执行循环语句之外的程序

continue 语句

与 break 语句相比,continue 语句只能种植本次循环,提前进入到下一次循环中。

for i in range(1, 10, 2):
    if i == 7:	# 退出循环的条件 
        continue
    print(i)
print('这是循环之外的程序。')

4、语句的特殊情况

pass 语句
for i in range(1, 10, 2):
    if i == 7:
        pass
    else:
        print(i)

通过 pass 语句来填补这个空缺位置。
使用 pass 语句后,程序可以顺利执行。
如果在 if i == 7: 后面没有任何缩进的语句,则会影响程序的运行。

循环语句中的 else

1、else 和 while 属于同一个层次。
else 和 for 属于一个层次。

for i in range(1, 10, 2):
    print('输出 (for 循环中)', i)
else:
    print("输出 (else 中)", i)
  • 如果 i 加 2 则超出了规定的范围,所以不会继续执行循环,而是执行 else 后面的语句,输出 i 的值 9。

2、如果使用 break 语句中途退出循环,则不会执行 else 后面的语句。

for i in range(1, 10, 2):
    print('输出 (for 循环中)', i)
    if i == 5:
        break
else:
    print("输出 (else 中)", i)
  • 16
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值