Python中的循環退出舉例及while循環舉例
for循環:
for
else
for 循環如果正常結束,都會執行else語句。
腳本1:
#!/usr/bin/env python
for i in xrange(10):
print i
else:
print "main end"
結果:
[root@localhost 20171227]# python exit.py
0
1
2
3
4
5
6
7
8
9
main end
[root@localhost 20171227]#
腳本2:
#!/usr/bin/env python
import time
for i in xrange(10):
print i
time.sleep(1)
else:
print "main end"
結果:(中途按ctrl+c中斷)
[root@localhost 20171227]# python exit.py
0
1
2
3
4
^CTraceback (most recent call last):
File "exit.py", line 6, in <module>
time.sleep(1)
KeyboardInterrupt
[root@localhost 20171227]#
腳本3:
沒正常結束:
#!/usr/bin/env python
import time
for i in xrange(10):
print i
if i == 5:
break
else:
print "main end"
結果:
[root@localhost 20171227]# python exit.py
0
1
2
3
4
5
[root@localhost 20171227]#
腳本4:(跳過本次循環continue)
#!/usr/bin/env python
import time
for i in xrange(10):
if i == 3 :
continue
if i == 5:
break
print i
else:
print "main end"
結果:
[root@localhost 20171227]# python exit.py
0
1
2
4
[root@localhost 20171227]#
腳本5:(pass 什麽都不作)
#!/usr/bin/env python
import time
for i in xrange(10):
if i == 3 :
continue
elif i == 5:
break
elif i ==6:
pass #類似shell 中的:
print i
else:
print "main end"
腳本6:
#!/usr/bin/env python
import time
import sys
for i in xrange(10):
if i == 3 :
continue
elif i == 5:
continue
elif i ==6:
pass
elif i ==7:
sys.exit()
print i
else:
print "main end"
print "hahaha"
結果:
[root@localhost 20171227]# python exit.py
0
1
2
4
6
[root@localhost 20171227]#
PIP顯示第三方包
[root@localhost 20171227]# pip list
DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.
backports.ssl-match-hostname (3.4.0.2)
chardet (2.2.1)
configobj (4.7.2)
decorator (3.4.0)
iniparse (0.4)
IPy (0.75)
ipython (1.2.1)
jsonschema (2.5.1)
kitchen (1.1.1)
langtable (0.0.31)
matplotlib (1.2.0)
作業:猜數字遊戲
系統生成一個20以內的隨機整數。
玩家有6次機會進行猜猜看,每次猜測都有反饋(猜大了,猜小了,猜對了-結束)
6次中,猜對了,玩家贏了。
否則系統贏了。
In [1]: import random
In [2]: random.ran
random.randint random.random random.randrange
In [2]: random.randint(1,20)
Out[2]: 14
In [3]: random.randint(1,20)
Out[3]: 6
流程控制-while舉例
while與for相對比:
for循環用在有次數的循環上。
while循環用在有條件的控制上。
while循環:
while循環,直到表達式變為假,才退出。while循環,表達式是一個邏輯表達式,必須返回一個True或False
語法:
while expression:
statement(s)
練習腳本如果下:
腳本1:
#!/usr/bin/python
n = 0
while 1:
if n == 10:
break
print n, 'hellow'
n +=1
結果:
[root@localhost 20171227]# python while.py
0 hellow
1 hellow
2 hellow
3 hellow
4 hellow
5 hellow
6 hellow
7 hellow
8 hellow
9 hellow
[root@localhost 20171227]#
腳本2:
#!/usr/bin/python
while 1:
print 'hellow'
input=raw_input("please input sth,q for exit.")
if input == "q":
break
結果:
[root@localhost 20171227]# python while.py
hellow
please input sth,q for exit.s
hellow
please input sth,q for exit.3
hellow
please input sth,q for exit.q
[root@localhost 20171227]#
條件 為假時也會退出:
腳本3:
#!/usr/bin/python
sth=''
while sth != 'q':
print 'hellow'
sth=raw_input("please input sth,q for exit.")
腳本4:
回車後退出:
#!/usr/bin/python
sth=''
while sth != 'q':
print 'hellow'
sth=raw_input("please input sth,q for exit.")
if not sth:
break
腳本5:
#!/usr/bin/python
sth=''
while sth != 'q':
print 'hellow'
sth=raw_input("please input sth,q for exit.")
if not sth:
break
else:
print 'world'
結果:
[root@localhost 20171227]# python while.py
hellow
please input sth,q for exit.q
world
[root@localhost 20171227]#
腳本6:
#!/usr/bin/python
sth=''
while sth != 'q':
print 'hellow'
sth=raw_input("please input sth,q for exit.")
if not sth:
break
if sth == 'quit':
continue
print 'continue'
else:
print 'world'
結果:
[root@localhost 20171227]# python while.py
hellow
please input sth,q for exit.ss
continue
hellow
please input sth,q for exit.df
continue
hellow
please input sth,q for exit.quit
hellow
please input sth,q for exit.q
continue
world
Python中的循環退出舉例及while循環舉例