python while循环举例_Python中的循环退出举例及while循环举例

循环退出

for循环:

for iterating_var in sqquence:

statement(s)

else:

statement(s)

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

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值