1、while 死循環
[root@localhost python]# cat while.py #!/usr/bin/env python # _*_ coding:utf8 _*_ import time while 1 == 1: print ('ok',time.time()) [root@localhost python]# python3.5 while.py ok 1527297813.8800905 ok 1527297813.880309 ok 1527297813.880338 ok 1527297813.880751 ok 1527297813.8808265 結束,跳出死循環 [root@localhost python]# cat while.py #!/usr/bin/env python # _*_ coding:utf8 _*_ import time count = 0 while count < 5: print ('ok',time.time()) count = count + 1 print ('結束,跳出死循環')
第一題:1、使用while循環輸出123456 8910
[root@localhost python]# python3.5 while.py 1 2 3 4 5 6 8 9 10 結束,跳出死循環 [root@localhost python]# cat while.py #!/usr/bin/env python # _*_ coding:utf8 _*_ count = 1 while count < 11: if count == 7: pass else: print (count) count = count + 1 print ('結束,跳出死循環')
第二題:求1-100的所有數的和
[root@localhost python]# cat if3.py #!/usr/bin/env python # _*_ coding:utf8 _*_ a = 1 b = 0 while a < 101: b = a + b a = a + 1 print (b) [root@localhost python]# python if3.py 5050 第一次循環結束 b=1 a=2 第二次循環結束 b=3 a=3 第三次循環結束 b=6 a=4 第四次循環結束 b=10 a=5 第五次循環結束 b=15 a=6 第六次循環結束 b=21 a=7 第七次循環結束 b=28 a=8
第三題:輸出1-100內所有的奇數
[root@localhost python]# cat if3.py #!/usr/bin/env python # _*_ coding:utf8 _*_ a = 1 while a < 21: b = a % 2 if b == 1: print (a) else: pass a = a + 1 [root@localhost python]# python if3.py 1 3 5 7 9 11 13 15 17 19 第四題:輸出1-100內所有的偶數 [root@localhost python]# cat if3.py #!/usr/bin/env python # _*_ coding:utf8 _*_ a = 1 while a < 21: b = a % 2 if b == 0: print (a) else: pass a = a + 1 [root@localhost python]# python if3.py 2 4 6 8 10 12 14 16 18
20
第五題:求1-2+3-4+5-6+7-8+9-10...99的所有數的和
[root@localhost python]# python if3.py -1 1 -2 2 -3 3 -4 4 4 [root@localhost python]# cat if3.py #!/usr/bin/env python # _*_ coding:utf8 _*_ a = 1 b = 0 while a < 9: temp = a % 2 if temp == 1: b = b - a else: b = a + b a = a + 1 print (b) print (b) 第一次循環開始 a=1 b=0 a<9 1/2 余數是1 b=0-1=-1 a=2 第二次循環開始 a=2 b=-1 a<9 2/2 余數是0 b=2+(-1)=1 a=3 第三次循環開始 a=3 b=1 3<9 3/2 余數是1 b=1-3=-2 a=4 第四次循環 a=4 b=-2 4<9 4/2 余數是0 b=4+(-2)=2 第五次循環 a=5 b=2 5<9 5/2 余數是1 b=2-5=-3 a=6
補充:while也有else,這個else只執行一次
[root@localhost python]# python3.5 while1.py 0 1 2 3 4 else 只執行一次,不在循環里面 ...end... [root@localhost python]# cat while1.py #!/usr/bin/env python # _*_ coding:utf8 _*_ count = 0 while count < 5: print (count) count = count + 1 else: print ('else 只執行一次,不在循環里面') print ('...end...')
補充:while中的contuinue,表示符合條件遇到continue之后立刻在回到while循環中,不會執行continue下面的print動作,直到循環結束也不會執行continue下面的print,也就是終止當前循環,開始下一次循環
[root@localhost python]# cat while1.py #!/usr/bin/env python # _*_ coding:utf8 _*_ count = 0 while count < 5: count = count + 1 print (count) continue print ('111111') print ('...end...') [root@localhost python]# python3.5 while1.py 1 2 3 4 5 ...end...
補充:while中的break 是終止所有循環,結束
[root@localhost python]# cat while1.py #!/usr/bin/env python # _*_ coding:utf8 _*_ count = 0 while count < 5: count = count + 1 print (count) break print ('111111') print ('...end...') [root@localhost python]# python3.5 while1.py 1 ...end...
第六題:用戶登錄(三次機會重試)
[root@localhost python]# python3.5 yonghudenglu.py 用戶名>>>aa 請輸入密碼>>>aa 用戶名或者密碼錯誤,請重新輸入 用戶名>>>aa 請輸入密碼>>>aa 用戶名或者密碼錯誤,請重新輸入 用戶名>>>aaa 請輸入密碼>>>aa 用戶名或者密碼錯誤,請重新輸入 錯誤超過三次,再見 [root@localhost python]# python3.5 yonghudenglu.py 用戶名>>>root 請輸入密碼>>>root123 恭喜你登錄成功 [root@localhost python]# [root@localhost python]# [root@localhost python]# cat yonghudenglu.py #!/usr/bin/env python # _*_ coding:utf8 _*_ yonghu = "root" mima = "root123" a = 0 while a < 3: name = input('用戶名>>>') passwd = input ('請輸入密碼>>>') if name != (yonghu) or passwd != (mima): print ('用戶名或者密碼錯誤,請重新輸入') a = a + 1 if a == 3: print ('錯誤超過三次,再見') elif name == (yonghu) and passwd == (mima): print ('恭喜你登錄成功') a = 3
