python教程:控制流程
一、控制流程用到的运算符
1.身份运算符 is
比较的时对象id, 也即是cpython中的地址
2.成员运算符 in
判断对象是否时某个容器中的值
3.比较运算符
4.逻辑运算符
按优先级升序排列
- or是个短路运算符,因此只有在第一个参数为假值时才会对第二个参数求值
- and是个短路运算符,因此只有在第一个参数为真值时才会对第二个参数求值
- not 的优先级比非布尔运算符低,因此
not a == b 会被解读为 not (a == b)
而a == not b
会引发语法错误
二、判断语句
1. if语句
条件成立执行
当要进行用户信息匹配时, 要求用户输入用户名和密码进行匹配, 匹配成功就运行用户进入系统
username = "dyp"
password = "abcd1234"
if username == (name := input("输入用户名:")) and password == (passwd := input("输入密码")):
print("登录完成, 欢迎进入系统")
elif username != name:
print("用户名输入有误")
elif password != passwd:
print("密码有误")
else:
print("您还未注册账户, 请注册")
- elif是else if的缩写
- 从上到下依次进行判断, 当条件成立, 执行条件成立的语句块. 然后结束判断
- 可以有零个或多个 elif 部分,以及一个可选的 else 部分
- 一个
if ... elif ... elif ...
序列可以看作是其他语言中的 switch 或 case 语句的替代
三目运算符
return_value_A if
条件else return_value_B
- 条件成立时, 三目运算符的值是
return_value_A
- 条件不成立时, 三目运算符的值是
return_value_A
三、循环语句
1 while条件循环
比如到银行取钱时, 需要密码, 且只能输入三次, 只要有一次正确就能进入账户.
倘若, 三次都不正确则锁定账户.
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
passwd = "123456"
i = 0
while i < 3:
password = input("输入密码: ")
if passwd == password:
print("成功进入账户")
break # 跳出最近成循环
else:
i += 1
if (i-1) == 2:
print("账户已锁定")
if input("是否再次尝试, yes|y").casefold() in ["yes", 'y']:
i = 0
else:
continue # 跳过当前循环
- break: 跳出最近一层循环
- continue: 跳过当前一次循环
- while后面条件控制循环次数.
- 当要使用到无限循环(死循环), 使用while 1:的性能要比while True要好
- 检查循环是否被break打断使用else子句:
while 条件:
条件成立执行
else:
没有被break打断时执行
2 for迭代循环
Python 中的 for 语句是对任意序列进行迭代(例如列表或字符串),条目的迭代顺序与它们在序列中出现的顺序一致
words = ['cat', 'window', 'defenestrate']
for w in words:
print(w, len(w))
else:
print("迭代完成")
- 从words列表中依次取出值, 并赋值给变量w, 用于在循环中使用
- for语句也是有else子句的. 也可以使用break 和 continue来进行循环控制
- range对象使用在for循环语句中
打印九九乘法表
for i in range(1, 10):
for j in range(1, i+1):
print(f"{i}*{j}={i*j}\t", end="")
print()
结果如下:
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
>>> for i in range(1, 10):
... for j in range(1, i+1):
... print(f"{i}*{j}={i*j}\t", end="")
... print()
...
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
- 循环时可以进行嵌套的。
- 循环语中可以使用其他语句, 比如条件语句, 辅助循环控制语句等.
本文来自博客园,作者:I'm_江河湖海,转载请注明原文链接:https://www.cnblogs.com/jhhh/p/16761542.html