1 #1、循环的语法与基本使用
2 """
3 print(1)4 while 条件:5 代码16 代码27 代码38 print(3)9 """
10 #11 #count = 0
12 #while count < 5: # 5 < 5
13 #print(count) # 0,1,2,3,4
14 #15 #print('顶级代码----->')
16
17 #2、死循环与效率问题
18 #count = 0
19 #while count < 5: # 5 < 5
20 #print(count) # 0,1,2,3,4
21 #22 #while True:
23 #name = input('your name >>>> ')
24 #print(name)
25
26 #纯计算无io的死讯会导致致命的效率问题
27 #while True:
28 #1+1
29
30 #while 1:
31 #print('xxxx')
32
33 #3、循环的应用
34 username = 'egon'
35 password = '123'
36
37 #两个问题:
38 #1、重复代码
39 #2、输对了应该不用再重复
40 #while True:
41 #inp_name=input('请输入您的账号:')
42 #inp_pwd=input('请输入您的密码:')
43 #44 #if inp_name == username and inp_pwd == password:
45 #print('登录成功')
46 #else:
47 #print('账号名或密码错误')
48
49
50 #4、退出循环的两种方式
51 #方式一:将条件改为False,等到下次循环判断条件时才会生效
52 tag =True53 whiletag:54 inp_name = input('请输入您的账号:')55 inp_pwd = input('请输入您的密码:')56
57 if inp_name == username and inp_pwd ==password:58 print('登录成功')59 tag = False #之后的代码还会运行,下次循环判断条件时才生效
60 else:61 print('账号名或密码错误')62
63 print('====end====')64
65 #方式二:break,只要运行到break就会立刻终止本层循环
66 whileTrue:67 inp_name = input('请输入您的账号:')68 inp_pwd = input('请输入您的密码:')69
70 if inp_name == username and inp_pwd ==password:71 print('登录成功')72 break #立刻终止本层循环
73 else:74 print('账号名或密码错误')75
76 #print('====end====')
77
78 #7、while循环嵌套与结束
79 '''
80 tag=True81 while tag:82 while tag:83 while tag:84 tag=False85
86
87 # 每一层都必须配一个break88 while True:89 while True:90 while True:91 break92 break93 break94 '''
95 ## break的方式
96 #while True:
97 #inp_name=input('请输入您的账号:')
98 #inp_pwd=input('请输入您的密码:')
99 #100 #if inp_name == username and inp_pwd == password:
101 #print('登录成功')
102 #while True:
103 #cmd=input("输入命令>: ")
104 #if cmd == 'q':
105 #break
106 #print('命令{x}正在运行'.format(x=cmd))
107 #break # 立刻终止本层循环
108 #else:
109 #print('账号名或密码错误')
110 #111 ## print('====end====')
112
113 ## 改变条件的方式
114 #tag=True
115 #while tag:
116 #inp_name=input('请输入您的账号:')
117 #inp_pwd=input('请输入您的密码:')
118 #119 #if inp_name == username and inp_pwd == password:
120 #print('登录成功')
121 #while tag:
122 #cmd=input("输入命令>: ")
123 #if cmd == 'q':
124 #tag=False
125 #else:
126 #print('命令{x}正在运行'.format(x=cmd))
127 #else:
128 #print('账号名或密码错误')
129
130
131 #8、while +continue:结束本次循环,直接进入下一次
132 #强调:在continue之后添加同级代码毫无意义,因为永远无法运行
133 #count=0
134 #while count < 6:
135 #if count == 4:
136 #count+=1
137 #continue
138 ## count+=1 # 错误
139 #print(count)
140 #count+=1
141
142 #9、while +else:针对break
143 #count=0
144 #while count < 6:
145 #if count == 4:
146 #count+=1
147 #continue
148 #print(count)
149 #count+=1
150 #else:
151 #print('else包含的代码会在while循环结束后,并且while循环是在没有被break打断的情况下正常结束的,才会运行')
152
153 #count=0
154 #while count < 6:
155 #if count == 4:
156 #break
157 #print(count)
158 #count+=1
159 #else:
160 #print('======>')
161
162
163 #应用案列:
164 #版本1:
165 #count=0
166 #tag=True
167 #while tag:
168 #if count == 3:
169 #print('输错三次退出')
170 #break
171 #inp_name=input('请输入您的账号:')
172 #inp_pwd=input('请输入您的密码:')
173 #174 #if inp_name == username and inp_pwd == password:
175 #print('登录成功')
176 #while tag:
177 #cmd=input("输入命令>: ")
178 #if cmd == 'q':
179 #tag=False
180 #else:
181 #print('命令{x}正在运行'.format(x=cmd))
182 #else:
183 #print('账号名或密码错误')
184 #count+=1
185
186 #版本2:优化
187 count =0188 while count < 3:189 inp_name = input('请输入您的账号:')190 inp_pwd = input('请输入您的密码:')191
192 if inp_name == username and inp_pwd ==password:193 print('登录成功')194 whileTrue:195 cmd = input("输入命令>:")196 if cmd == 'q': #整个程序结束,退出所有while循环
197 break
198 else:199 print('命令{x}正在运行'.format(x=cmd))200 break
201 else:202 print('账号名或密码错误')203 count += 1
204 else:205 print('输错3次,退出')