常用逻辑 if、while、for
一、if 判断
语法一:
if 条件:
# 条件成立时执行的子代码块
代码1
代码2
代码3
示例:
sex='female' age=18 is_beautiful=True if sex == 'female' and age > 16 and age < 20 and is_beautiful: print('开始表白。。。') print('other code1...') print('other code2...') print('other code3...')
语法二:
if 条件:
# 条件成立时执行的子代码块
代码1
代码2
代码3
else:
# 条件不成立时执行的子代码块
代码1
代码2
代码3
示例:
sex='female' age=38 is_beautiful=True if sex == 'female' and age > 16 and age < 20 and is_beautiful: print('开始表白。。。') else: print('阿姨好。。。') print('other code1...') print('other code2...') print('other code3...')
语法三:
if 条件1:
if 条件2:
代码1
代码2
代码3
sex='female' age=18 is_beautiful=True is_successful=True height=1.70 if sex == 'female' and age > 16 and age < 20 and is_beautiful \ and height > 1.60 and height < 1.80: print('开始表白。。。') if is_successful: print('在一起。。。') else: print('什么爱情不爱情的,爱nmlgb的爱情,爱nmlg啊.') else: print('阿姨好。。。') print('other code1...') print('other code2...') print('other code3...')
语法四:
if 条件1:
代码1
代码2
代码3
elif 条件2:
代码1
代码2
代码3
elif 条件3:
代码1
代码2
代码3
……
else:
代码1
代码2
代码3
示例:
如果成绩 >= 90,那么:优秀
如果成绩 >= 80且 < 90, 那么:良好
如果成绩 >= 70且 < 80, 那么:普通
其他情况:很差
score = input('please input your score: ') # score='100' score = int(score) if score >= 90: print('优秀') elif score >= 80: print('良好') elif score >= 70: print('普通') else: print('很差')
二 、while循环
语法一:
while 条件:
代码1
代码2
代码3
while True: name=input('please input your name: ') pwd=input('please input your password: ') if name == 'egon' and pwd == '123': print('login successful') else: print('username or password error')
语法二:
while 条件1:
while 条件2:
代码1
代码2
代码3
示范一:
while True: name=input('please input your name: ') pwd=input('please input your password: ') if name == 'egon' and pwd == '123': print('login successful') while True: print(""" 0 退出 1 取款 2 转账 3 查询 """) choice=input('请输入您要执行的操作:') #choice='1' if choice == '0': break elif choice == '1': print('取款。。。') elif choice == '2': print('转账。。。') elif choice == '3': print('查询') else: print('输入指令错误,请重新输入') break else: print('username or password error')
示范二:
tag=True while tag: name=input('please input your name: ') pwd=input('please input your password: ') if name == 'egon' and pwd == '123': print('login successful') while tag: print(""" 0 退出 1 取款 2 转账 3 查询 """) choice=input('请输入您要执行的操作:') #choice='1' if choice == '0': tag=False elif choice == '1': print('取款。。。') elif choice == '2': print('转账。。。') elif choice == '3': print('查询') else: print('输入指令错误,请重新输入') else: print('username or password error')
结束while循环的两种方式
方式一:条件改为False
在条件改为False时不会立即结束掉循环,而是要等到下一次循环判断条件时才会生效
tag=True while tag: name=input('please input your name: ') pwd=input('please input your password: ') if name == 'egon' and pwd == '123': print('login successful') tag=False else: print('username or password error') print('===>')
方式二:while+break / continue
break一定要放在循环体内,一旦循环体执行到break就会立即结束本层循环
while True: name=input('please input your name: ') pwd=input('please input your password: ') if name == 'egon' and pwd == '123': print('login successful') break else: print('username or password error') print('===>>>>>') print('===>>>>>')
while+continue:结束本次循环,直接进入下一次循环
示例一:
count=1 while count < 6: #count=6 if count == 4: count += 1 continue print(count) count+=1
示例二:
while True: name=input('please input your name: ') pwd=input('please input your password: ') if name == 'egon' and pwd == '123': print('login successful') break else: print('username or password error') # continue # 此处加continue无用
了解知识:
while + else:
while 条件:
代码1
代码2
代码3
else:
在循环结束后,并且在循环没有被break打断过的情况下,才会执行else的代码
tag=True while tag: print(1) print(2) print(3) # tag=False break else: print('else的代码')
三、for 循环
for循环的强大之处在于循环取值
l=['a','b','c','d','e']
#while 取数组代码:
i=0
while i < len(l):
print(l[i])
i+=1
#for 取数组代码:
for x in l: # x='b'
print(x)
#for 取字典代码:
dic={'name':'egon','age':18,'gender':'male'}
for x in dic:
print(x,dic[x])
for + break
nums=[11,22,33,44,55] for x in nums: if x == 44: break print(x)
for + continue
nums=[11,22,33,44,55] for x in nums: if x == 22 or x == 44: continue print(x)
for + else
names=['egon','kevin1111_dsb','alex_dsb','mac_dsb'] for name in names: if name == 'kevin_dsb': break print(name) else: print('======>')
for+ range()
# range的用法 >>> range(1,5) [1, 2, 3, 4] >>> for i in range(1,5): ... print(i) ... 1 2 3 4 >>> range(1,5,1) [1, 2, 3, 4] >>> range(1,5,2) # 1 3 [1, 3] for i in range(5): # 0 1 2 3 4 print(i)