运算符的补充及流程控制
运算符的补充
1.成员运算符
成员运算符:就是查看某个个体是否在某个群体的内部
关键字:
in(在) ; not in(不在)
names_list = ['kevin', 'jack', 'tank', 'tony']
print('kevin' in names_list) # True
print('aa' in names_list) # False
print('hello' in 'hellworld') # False
print('ke' in 'kevin') # True
print('kevin' in {'username': 'kevin', 'age': 18}) # False
print('username' in {'username': 'kevin', 'age': 18}) # True
运行结果:

身份运算符
身份运算符:比较两个值是否相等
关键字 :
==(用来比较值是否相等)
1 s1 = ['kevin', 'tank', 'jack'] 2 s2 = ['kevin', 'tank', 'jack'] 3 4 print(s1 == s2) # True
运算结果:

is(用来比较内存编号是否相等)
1 s1 = ['kevin', 'tank', 'jack'] 2 s2 = ['kevin', 'tank', 'jack'] 3 4 print(s1 is s2) # False 5 print(id(s1)) 6 print(id(s2))
运行结果:

值相等的内存编号不一定相等
内存编号相等的值一定相等
流程控制
流程控制就是控制事物的执行流程
1. 顺序结构
顺序结构就是自上而下的依次执行
2.分支结构
分支结构:根据判断条件的真假去执行不同分支的代码块
1. 单分支结构
"""
语法格式:
if 条件:
条件成立之后要执行的代码块
"""
eg
mao = 18
if mao < 26:
print('小猫咪真可爱,跟我回家嘛')

2.双分支结构
"""
语法格式:
if 条件:
条件成立之后要执行的代码块
else:
条件不成立执行的代码块
"""
eg.
age = 18
if age < 26:
print('小姐姐')
else:
print('认错人了')
# 双分支结构有且只能执行一个分支
结果:

3.多分支结构
"""
语法格式:
if 条件1:
条件1成立之后执行的代码块
elif 条件2:
条件1不成立,条件2成立执行的代码块
elif 条件3:
条件1、条件2不成立,条件3成立之后执行的代码块
...
else:
以上所有条件都不成立的话,执行的代码块
# 以上不管你写了多少种情况,也只会执行一种情况
"""
eg.
score = 90 if score >=90: print('优秀') elif score >=80 : print('良好') elif score >=70: print('中等') elif score >=60: print('及格') else : print('重修')
运行结果:

# 注意事项:
1.条件都要转为布尔类型判断,根据条件的成立与否,决定是否执行代码块
2.条件成立之后,需要执行子代码块,子代码是要缩进的,一般情况下推荐使用4个空格作为缩进(或按 Tab)
3.只要遇到冒号,下面一行代码必缩进
4. 当你的字代码块只有一行的时候,可以不换行,直接写在冒号后面
5.同属于一个代码块的子代码块,缩进量要一样
6.不是所有的代码都有子代码块
if else练习题
1. 让用户输入用户名和密码,判断用户名和密码是否正确,如果正确,打印登录成功,否则打印用户名或者密码错误,用户名:kevin,密码:123
username = input('username:') password = int(input('password:')) if username == 'kevin' and password == 123: print('登录成功') else: print('登录失败')


3. 循环结构
循环结构就是重复执行
"""
语法结构:
while 条件:
条件成立之后执行的循环体
"""
eg.
while True: # 1. 先让用户输入用户名和密码 username = input('username>>>:') password = input('password>>>:') # password: str---->123 password = int(password) # 只能转数字类型的 # 2. 比较用户名和密码 # 在python中,==比较值大小和类型 # if username == 'kevin' and password == '123': if username == 'kevin' and password == 123: print('登录成功') else: print('登录失败')
运行结果:

while+break
break:跳出本次循环
eg.
count = 0 while count < 3: # 1. 先让用户输入用户名和密码 username = input('username>>>:') password = input('password>>>:') # password: str---->123 password = int(password) # 只能转数字类型的 # 2. 比较用户名和密码 # 在python中,==比较值大小和类型 # if username == 'kevin' and password == '123': if username == 'kevin' and password == 123: print('登录成功') break # 调出while循环,它是跳出本层循环 else: print('登录失败')
运行结果:

标志位的使用
# 标志位的使用 flag = True while flag: # 1. 先让用户输入用户名和密码 username = input('username>>>:') password = input('password>>>:') # password: str---->123 password = int(password) # 只能转数字类型的 # 2. 比较用户名和密码 # 在python中,==比较值大小和类型 # if username == 'kevin' and password == '123': if username == 'kevin' and password == 123: print('登录成功') while flag: cmd = input('请输入你的指令:') print('正在执行你的指令: %s' % cmd) '''如果输入的是q,就退出整个程序''' if cmd == 'q': flag = False else: print('登录失败')
浙公网安备 33010602011771号