python之路-基础篇-005-循环

while循环和for循环,也可以相互嵌套使用。


【〇】学习环境

OS:MAC OS X 10.10.5
python2:2.7.10
python3:3.5.1

【一】while循环

while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。

while 判断语句:
    执行语句1...
else:
    执行语句2...

执行流程图如下:

st=>start: start
e=>end: end
op1=>operation: 执行语句1
op2=>operation: 执行语句2
con=>condition: 判断语句?

st->con
con(yes)->op1->con
con(no)->op2->e

1)无限循环

#/usr/bin/env python3
while True:
    a = input('your name:')
    print('your name is %s.' % a)
    

结果:使用Ctrl+C退出

your name:user01
your name is user01.
your name:user03
your name is user03.
your name:user01
your name is user01.
your name:

2)break,continue,pass

  • break 语句:在语句块执行过程中终止循环,并且跳出整个循环
  • continue 语句:在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环。
  • pass 语句:是为了保持程序结构的完整性。
lucky_number = 55
while True:
    a = int(input('猜一下我的幸运数字(0~100):'))
    if a > 100:
        print('你猜的数字超过范围了,再见。')
        break    #超过100,不能再猜了,退出整个循环
    elif a < 0:
        pass    #小于0,不处理
    elif a < lucky_number and a > 0:
        print('你猜的数字有点小,整大点。')
        continue  #退出本次循环
    elif a > lucky_number and a < 100:
        print('你猜的数字太小了,整小点。')
        continue
    else:
        print('你丫猜对了。')

结果:

猜一下我的幸运数字(0~100):23
你猜的数字有点小,整大点。
猜一下我的幸运数字(0~100):56
你猜的数字太小了,整小点。
猜一下我的幸运数字(0~100):-2
猜一下我的幸运数字(0~100):102
你猜的数字超过范围了,再见。

【二】for循环

for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
for循环的语法格式如下:

for 变量 in 序列:
    执行语句...
else:
    执行语句...

举例:猜幸运数字

Lucky_Num = 6
for i in range(3):
    input_num = int(input("guess my lucky number:"))
    if input_num > Lucky_Num:
        print("too big. Input a smaller number.")
    elif input_num < Lucky_Num:
        print("too small. Input a bigger number.")
    else:
        print("Bingo.")
        break
else:
    print("Too many retries.")

结果:

guess my lucky number:4
too small. Input a bigger number.
guess my lucky number:5
too small. Input a bigger number.
guess my lucky number:6
Bingo.

同样的,for循环也能使用break,continue,pass语句。


未完待续...

原文地址:https://www.cnblogs.com/felo/p/5089848.html