python流程控制while和if
Posted 5j421
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python流程控制while和if相关的知识,希望对你有一定的参考价值。
1.流程控制if
if的4种语法
-
语法1:
#结构形式 #if条件: # 代码1 # 代码2 # 代码3 # ... key_bak=123 key=int(input(‘key:‘)) if key==key_bak: print(‘login‘) print(‘end...‘)
-
语法2:
#结构形式 #if条件: # 代码1 # 代码2 # ... #else: # 代码1 # 代码2 # ... name=input(‘please input your name:‘) if name==‘lily‘: print(‘总经理‘) else: print(‘员工‘)
-
语法3:
#结构形式 #if条件: # 代码1 # ... #elif条件2: # 代码1 # ... #elif条件3: # 代码1 # ... #else: # 代码... #该结构由if条件开始运行,若符合条件则下面elif将不运行,若不符合将运行第一个elif,依次往下。 #小练习: #将100分按照90-100分为A,80-90分为B,60-80分为C,60以下分为D,输入其他信息错误。 score=input(‘your score:‘) score=int(score) if score>100: print(‘输入信息有误‘) elif score>=90: #这里没有and因为该结构形式在第一步已经将大于100的数据删选了。故不需要and score<=100 print(‘A‘) elif score>=80: # print(‘B‘) elif score>=60: print(‘C‘) else: print(‘D‘)
-
语法4:if的嵌套
#结构形式 #if 条件1: # if条件2: # 代码1 # ... #实例: #判断一个数字能否被2和3同时整除 num=input(‘请输入数字:‘) num=int(num) if num%2==0: if num%3==0: print(‘能被2和3同时整除‘) else: print(‘输入数字可以整除2,但不能整除3‘) else: if num%3==0: print(‘输入数字能整除3,不能整除2‘) else: print(‘输入数字不能整除3,也不能整除2‘)
2.流程控制while循环
-
1.while循环
也叫条件循环
#while条件: # 代码1 # 代码2 # ... name_of_bk=‘dengyifan‘ pwd_of_bk=‘1007508381‘ tag=True while tag: inp_name=input(‘your name:‘) inp_pwd=input(‘your password:‘) if inp_name==name_of_bk and inp_pwd==pwd_of_bk: print(‘login successful‘) tag=False else: print(‘user name or password error‘) print(‘finished‘) #该循环会一直到输入正确的信息才会按条件结束
2.while+break结构
break代表结束本层循环
#例 while True: print(1) break print(2) #在pycharm中,当在break 后写代码会以颜色标识告诉你后面同层代码不会运行。 #接前一结构实例,同样可以用break 来打断程序运行 name_of_bk=‘dengyifan‘ pwd_of_bk=‘1007508381‘ while tag: inp_name=input(‘your name:‘) inp_pwd=input(‘your password:‘) if inp_name==name_of_bk and inp_pwd==pwd_of_bk: print(‘login successful‘) break else: print(‘user name or password error‘) print(‘finished‘) #该循环同样也可一直运行至正确输入结束
-
3.while+continue结构
continue代表结束本次循环,和break有区别
#例 顺序输出1-9 count=1 while count<10: print(count) count+=1 # 若现在要剔除1-9中的3和6 count=1 while count<10: if count==3 or count==6: # 选择出3和6 count+=1 #在此处需要写一个增值运算,否则程序运行到count==3就一直运行continue语法 continue print(count) count += 1 #再接前一结构实例 #若现在须限制用户输入次数为3次 name_of_bk=‘dengyifan‘ pwd_of_bk=‘1007508381‘ count=0 while count<4: count += 1 if count == 4: print(‘输错次数过多‘) break inp_name=input(‘your name:‘) inp_pwd=input(‘your password:‘) if inp_name==name_of_bk and inp_pwd==pwd_of_bk: print(‘login successful‘) break else: print(‘user name or password error‘) print(‘finished‘)
4.while+else结构
else的子代块只有在while循环没有break打断才会运行,else会判断while循环怎么样结束
#
顺序输出1-9 count=0 while True: if count==10: break print(count) count+=1 else: print(‘else的子代块只有在while循环没有被break打断的情况下才会被执行‘) #else的内容并不会运行,因为被break打断 count=1 while count<10: print(count) count+=1 else: print(‘else的子代块只有在while循环没有被break打断的情况下才会被执行‘) #可以运行出来,因为没有break打断 ? ? # name_of_bk=‘dengyifan‘ # pwd_of_bk=‘1007508381‘ # count=0 # tag=True # while tag: # if count==3: # print(‘您输入的次数过多‘) # break # inp_name=input(‘your name:‘) # inp_pwd=input(‘your password:‘) # if inp_name==name_of_bk and inp_pwd==pwd_of_bk: # print(‘login successful‘) # while tag: # print(""" # 0 退出 # 1 查看 # 2 购买 # 3 支付 # 4 撤销""")# cmd=input(‘>>>_:‘) # if cmd==‘0‘: # tag=False # continue # elif cmd==‘1‘: # print(‘查看...‘) # elif cmd==‘2‘: # print(‘购买...‘) # elif cmd==‘3‘: # print(‘支付...‘) # elif cmd==‘4‘: # print(‘撤销...‘) # else: # print(‘输入的指令有误‘) # else: # print(‘user name or password error‘) # count+=1
以上是关于python流程控制while和if的主要内容,如果未能解决你的问题,请参考以下文章