1. 程式人生 > >Python中的循環退出舉例及while循環舉例

Python中的循環退出舉例及while循環舉例

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循環舉例