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

四、流程控制语句

1、分支语句

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

if 语句

1、if 和表达式之间有空格, 表达式后面有冒号( : )
ture false 表达式 语法快 输出结果

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

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

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

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

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

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

在 if...else 语句中,当不满足 if 语句的条件时,可以执行 else 后面的代码。
True False 表达式 语句块1 输出结果 语句块2

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

python 复制代码
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

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

2、循环语句

while 循环

1、
True False 表达式 循环体 输出结果

python 复制代码
num = 0
while num <= 10:
    print(num)
    num += 2

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

python 复制代码
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、
有 没有 可迭代对象中是否还有元素 取出下一个元素 循环体 输出结果

python 复制代码
for i in range(0, 11, 2):
    print(i)

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

python 复制代码
for i in range(0, 11, 2):
    print(i, end = ' ')

3、遍历字符串:

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

九九乘法表:

python 复制代码
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 语句
python 复制代码
for i in range(1, 20 ,2):
    if i > 10:
        break
    print(i)
print('这是循环之外的程序。')

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

continue 语句

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

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

4、语句的特殊情况

pass 语句
python 复制代码
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 属于一个层次。

python 复制代码
for i in range(1, 10, 2):
    print('输出 (for 循环中)', i)
else:
    print("输出 (else 中)", i)
  • 如果 i 加 2 则超出了规定的范围,所以不会继续执行循环,而是执行 else 后面的语句,输出 i 的值 9。
    2、如果使用 break 语句中途退出循环,则不会执行 else 后面的语句。
python 复制代码
for i in range(1, 10, 2):
    print('输出 (for 循环中)', i)
    if i == 5:
        break
else:
    print("输出 (else 中)", i)
相关推荐
java1234_小锋3 分钟前
Scikit-learn Python机器学习 - 特征降维 压缩数据 - 特征提取 - 主成分分析 (PCA)
python·机器学习·scikit-learn
java1234_小锋6 分钟前
Scikit-learn Python机器学习 - 特征降维 压缩数据 - 特征提取 - 线性判别分析 (LDA)
python·机器学习·scikit-learn
XISHI_TIANLAN1 小时前
【多模态学习】Q&A3:FFN的作用?Embedding生成方法的BERT和Word2Vec?非线性引入的作用?
学习·bert·embedding
思辨共悟1 小时前
Python的价值:突出在数据分析与挖掘
python·数据分析
计算机毕业设计木哥1 小时前
计算机毕设选题:基于Python+Django的B站数据分析系统的设计与实现【源码+文档+调试】
java·开发语言·后端·python·spark·django·课程设计
中等生2 小时前
Pandas 与 NumPy:数据分析中的黄金搭档
后端·python
用户8356290780512 小时前
Python查找替换PDF文字:告别手动,拥抱自动化
后端·python
KFCcrazy42 小时前
嵌入式学习日记(39)51单片机
嵌入式硬件·学习·51单片机
星哥说事2 小时前
Python自学12 — 函数和模块
开发语言·python
MuMuMu#2 小时前
JAVA NIO学习笔记基础强化学习总结
java·学习·nio