1 #!/usr/bin/env python
2 # -*- coding:utf-8 -*-
3
4 # while 循环练习题
5 #1. 使用while循环输出1 2 3 4 5 6 8 9 10
6 """
7 i = 0
8 while i < 10:
9 i +=1
10 if i == 7:
11 print(" ")
12 i+=1
13 print(i)
14 """
15 #2. 求1-100的所有数的和
16 """
17 i = 0
18 sum = 0
19 while i<100:
20 i+=1
21 sum = sum +i
22 print(sum)
23 """
24 #3. 输出 1-100 内的所有奇数
25 """
26 i = 0
27 while i < 100:
28 i +=1
29 if i %2 == 1:
30 print(i)
31 """
32 #4. 输出 1-100 内的所有偶数
33 """
34 i = 0
35 while i < 100:
36 i +=1
37 if i %2 == 0:
38 print(i)
39 """
40 #5. 求1-2+3-4+5 ... 99的所有数的和
41 """
42 i = 0
43 sum = 0
44 while i<100:
45 i+=1
46 if i%2 ==0:
47 sum = sum-i
48 else:
49 sum = sum +i
50
51 print(sum)
52 """
53 #6. 用户登陆(三次机会重试)
54 """
55
56 i = 0
57 while i<3:
58 i +=1
59 print('这是第%s次'%i)
60 name = input("请输入用户名:")
61 pwd = input("请输入密码:")
62 """
63 #7:猜年龄游戏
64 # 要求:
65 # 允许用户最多尝试3次,3次都没猜对的话,就直接退出,如果猜对了,打印恭喜信息并退出
66 """
67 age = '21'
68 for i in range(1,4):
69
70 print("这是第%s次"%i)
71 inp = input("请输入数字:")
72 if inp > age:
73 print('大了大了')
74 elif inp < age:
75 print("小了小了")
76
77 else:
78 print("恭喜你,答对了")
79
80 """
81
82
83
84 #8:猜年龄游戏升级版
85 # 要求:
86 # 允许用户最多尝试3次
87 # 每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y或y, 就继续让其猜3次,以此往复,如果回答N或n,就退出程序
88 # 如何猜对了,就直接退出
89 """
90 age = '21'
91 i = 0
92 while True:
93 if i == 3:
94 wq = input("要不要退出(Y/y)")
95 if wq == 'Y' or wq == 'y':
96 print('很遗憾,程序退出')
97 break
98 else:
99 i = 0
100 inp = input("请输入数字:")
101 if inp > age:
102 print('大了大了')
103 elif inp < age:
104 print("小了小了")
105
106 else:
107 print("恭喜你,答对了")
108 break
109 i +=1
110 """
111
112 # 九九乘法表
113 """
114 for i in range(1,10):
115 for j in range(1,i+1):
116 print('%s*%s=%s'%(i,j,i*j),end=' ')
117 print()
118 """
119
120 # 打印金字塔
121 """
122 层数 num = 5
123 space = num - cen
124 星号 stat = cen*2 -1
125 """
126 """
127 num = 5
128 for cen in range(1,num+1):
129 for j in range(num - cen):
130 print(' ',end='')
131 for k in range(cen*2-1):
132 print('*',end='')
133 print()
134 """
135 cen = 5
136 for i in range(1,cen+1):
137 for j in range(cen-i):
138 print(" ",end='')
139 for k in range(i*2-1):
140 print('*',end='')
141 print()
142
143 十七,作业
144 http://www.cnblogs.com/linhaifeng/articles/7133167.html
145
146 1 练习题
147
148 简述编译型与解释型语言的区别,且分别列出你知道的哪些语言属于编译型,哪些属于解释型
149 执行 Python 脚本的两种方式是什么
150 Pyhton 单行注释和多行注释分别用什么?
151 布尔值分别有什么?
152 声明变量注意事项有那些?
153 如何查看变量在内存中的地址?
154 写代码
155 实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败!
156 实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次
157 实现用户输入用户名和密码,当用户名为 seven 或 alex 且 密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次
158 写代码
159 a. 使用while循环实现输出2-3+4-5+6...+100 的和
160 b. 使用 while 循环实现输出 1,2,3,4,5, 7,8,9, 11,12 使用 while 循环实现输出 1-100 内的所有奇数
161
162 e. 使用 while 循环实现输出 1-100 内的所有偶数
163
164 现有如下两个变量,请简述 n1 和 n2 是什么关系?
165
166 n1 = 123456
167 n2 = n1
168
169
170
171 答***********答*****************答**************答********答
172
173 1、编译型与解释型语言:
174 区别:编译型语言的执行效率比解释型语言高,但是开发效率比解释型语言低
175 编译型:C语言,c++,C#,java,
176 解释型:Python/JavaScript / Perl /Shell
177
178 2、执行Python脚本的两种方式是什么?
179 通过终端进行交互
180 通过python脚本解释器进行操作
181 (
182 1、./run.py.shell直接调用python脚本
183
184 2、python run.py 调用python 解释器来调用python脚本
185 )
186
187
188 3、Python单行注释和多行注释分别用 # 和""" 注释内容 """
189
190 4、布尔值分别有 None,0,空(空字符串,空列表,空字典等)三种情况下布尔值为False
191
192 5、声明变量注意事项有哪些
193 1、变量名只能是数字,字母,下划线的任意组合(区分大小写)
194 2、变量的开头不能是数字
195 3、不能将变量命名为Python的关键字
196
197 6、如何查看变量在内存中的地址:
198 name = ouyang
199 id(name)
200
201 7、写代码
202 1、实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,
203 显示登陆成功,否则登陆失败!
204
205 naem = input("请输入用户名:")
206 pwd = input("请输入密码:")
207 if name == seven and pwd == '123':
208 print("登陆成功")
209 else:
210 print("登陆失败")
211
212 2、实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,
213 显示登陆成功,否则登陆失败,失败时允许重复输入三次
214
215 name = input("请输入用户名:")
216 pwd = input("请输入密码:")
217 if name == "seven" and pwd == '123':
218 print("登陆成功")
219 else:
220 print("登陆失败")
221 i = 0
222 while i < 3:
223 i+=1
224 print("This is number %s"%i)
225
226 name = input("请输入用户名:")
227 pwd = input("请输入密码:")
228 if name == "seven" and pwd == '123':
229 print("登陆成功")
230 break
231 else:
232 print("登陆失败")
233
234 3、实现用户输入用户名和密码,当用户名为 seven 或 alex 且 密码为 123 时
235 ,显示登陆成功,否则登陆失败,失败时允许重复输入三次
236 name = input("请输入用户名:")
237 pwd = input("请输入密码:")
238 if name == "seven"or name == 'alex' and pwd == '123':
239 print("登陆成功")
240 else:
241 print("登陆失败")
242 i = 0
243 while i < 3:
244 i+=1
245 print("This is number %s"%i)
246
247 name = input("请输入用户名:")
248 pwd = input("请输入密码:")
249 if name == "seven" and pwd == '123':
250 print("登陆成功")
251 break
252 else:
253 print("登陆失败")
254
255
256
257
258 8、a. 使用while循环实现输出2-3+4-5+6...+100 的和
259 i = 1
260 sum = 0
261 while i < 100:
262 i +=1
263 if i%2 == 0:
264 sum =sum +i
265 else:
266 sum -= i
267 print(sum)
268 b. 使用 while 循环实现输出 1,2,3,4,5, 7,8,9, 11,12
269
270 i = 0
271 while i <12:
272 i +=1
273 if i == 6 or i == 10:
274 print(" ")
275 continue
276 else:
277 print(i)
278 使用 while 循环实现输出 1-100 内的所有奇数
279 i = 0
280 while i<100:
281 i+=1
282 if i%2 == 1:
283 print(i)
284
285 e. 使用 while 循环实现输出 1-100 内的所有偶数
286 i = 0
287 while i<100:
288
289 if i%2 == 0:
290 print(i)
291 i+=1
292
293 9、 现有如下两个变量,请简述 n1 和 n2 是什么关系?
294
295 n1 = 123456
296 n2 = n1
297
298 n1和 n2 有相同的id地址 那么type和value也必然相同
299
300
301
302
303
304
305
306 答***********答*****************答**************答********答
307
308
309 2 作业:编写登陆接口
310
311 基础需求:
312 让用户输入用户名密码
313 认证成功后显示欢迎信息
314 输错三次后退出程序
315
316 dic={
317 'egon1':{'password':'123','count':0},
318 'egon2':{'password':'123','count':0},
319 'egon3':{'password':'123','count':0},
320
321 }
322 while True:
323 name = input("请输入用户名")
324 if not name in dic:
325 print("用户名不存在")
326 continue
327 if dic[name]['count'] > 2:
328 print("操作次数过多,退线")
329 continue
330 pwd = input("请输入密码")
331 if dic[name]['password'] == pwd:
332 print("登陆成功")
333 break
334
335 else:
336 print("用户或密码名错误")
337 dic[name]['count'] +=1
338
339
340
341 升级需求:
342
343 可以支持多个用户登录 (提示,通过列表存多个账户信息)
344 用户3次认证失败后,退出程序,再次启动程序尝试登录时,
345 还是锁定状态(提示:需把用户锁定的状态存到文件里)
346
347 dic={
348 'egon1':{'password':'123','count':0},
349 'egon2':{'password':'123','count':0},
350 'egon3':{'password':'123','count':0},
351
352 }
353
354
355 tage = 0
356 while True:
357 name = input("user")
358 if not name in dic:
359 print("用户不存在")
360 with open('t1','r+',encoding= 'utf-8') as f:
361 line = f.read().split('|')
362 if name in line:
363 print("已锁定")
364 break
365 if dic[name]['count'] >2:
366 print("已退线")
367 continue
368 pwd = input("password")
369 if pwd == dic[name]['password']:
370 print("登陆成功")
371 break
372 else:
373 print("密码名错误")
374 dic[name]['count'] +=1
375
376
377
378
379