Python的xiao习09-基础知识6,循环

418 阅读4分钟

循环


循环语句允许我们执行一个语句或语句组多次,下面是在大多数编程语言中的循环语句的一般形式:

Python 提供了 for 循环和 while 循环(在 Python 中没有 do..while 循环):

  1. while循环:在给定判断条件为True的时候,执行循环代码块,否则退出循环体 语法:
while (判断条件):
    <执行语句1>
    <执行语句2>
    ...

例:求出1~100的和(1+2+3+4+5....+100)

num = 1
sum = 0
while (num < 100) :
    sum += num
    num +=1
    print('sum的值:',sum)
    print('num的值:',num)

while循环,一般用于再知道最终条件,不知道具体要循环次数的情况下
例如:体育老师罚你跟你说,罚你操场跑圈,跑到我不生气为止。你不知道跑多少圈,只能每跑一圈问体育老师一句您还生气吗,直到说不生气了你就可以停下了。其中:
跑到我不生气为止——只知道停止结果
不知道跑多少圈——不知道运行次数
每跑一圈问老师还生气吗——每次执行完一轮循环进行一次条件判断
不生气了——跑步的条件不满足了(生气),停止循环
2. for循环

for  迭代变量  in  序列:
    <执行代码1>
    <执行代码1>
    <执行代码1>
    ....

例:当前APP总用户10万人,预计每年增长总人数10%,请问10年后总人数能达到多少

# 第一个实例
for letter in 'Python':     
   print '当前字母 :', letter
 
# 第二个实例
fruits = ['banana', 'apple',  'mango']
for fruit in fruits:        
   print '当前水果 :', fruit

结果:

实例一结果
当前字母 : P
当前字母 : y
当前字母 : t
当前字母 : h
当前字母 : o
当前字母 : n

#实例二结果
当前水果 : banana
当前水果 : apple
当前水果 : mango
  1. 嵌套循环 循环语句可以做到嵌套,例如:
for i in range(1,10):   #循环几行
    for j in range(1,i+1):      #每行循环几次
        print(i,'*',j,' = ',i*j,end='   ')     #print(输入的内容,end='以什么结尾')
    print() #每行输出玩所有内容换行

嵌套循环中,可以for循环for循环嵌套,也可以跟while循环互相嵌套。while也是如此。

控制循环语句

break

在循环中,break语句可以提前退出循环。例如,本来要循环打印1~100的数字:

n = 1
while n <= 100:
    print(n)
    n = n + 1
print('END')

上面的代码可以打印出1~100。如果要提前结束循环,可以用break语句:

n = 1
while n <= 100:
    if n > 50: # 当n > 50时,条件满足,执行break语句
        break  #break语句会结束当前循环,不在判断是否满足循环条件,直接结束循环
    print(n)
    n = n + 1
print('END')

执行上面的代码可以看到,打印出1~50后,紧接着打印END,程序结束。

continue

在循环过程中,也可以通过continue语句,跳过当前的这次循环,直接开始下一次循环。:

n = 1
while n <= 100:
    if (n % 2 != 0):    #判断n是否是偶数,不是偶数重新开始循环
        n+=1            
        continue        #continue之后所有循环内的代码不再执行,从头开始
    print(n)
    n += 1

输出结果:2 4 6 8 ....100

pass

Python pass 是空语句,是为了保持程序结构的完整性。pass 不做任何事情,一般用做占位语句。
例如:

# 输出 Python 的每个字母
for letter in 'Python':
    if letter == 'h':
        pass
        print('这是 pass 块')
    print( '当前字母 :', letter)
print("Good bye!")

在 Python 中有时候会看到一个 def 函数:

def sample(n_samples):
    pass

该处的 pass 便是占据一个位置,因为如果定义一个空函数程序会报错,当你没有想好函数的内容是可以用 pass 填充,使程序可以正常运行。

小结


  1. 循环
关键字 语法 用处
while while (判断条件):
    <循环代码1>
     <循环代码2>
一般用于确定最终结果、但是不知道具体循环次数的循环中使用
for for 迭代变量 in 序列 :
    <循环代码1>
    <循环代码2>
一般用于知道循环次数的循环
嵌套循环 可以用任意方式嵌套,但一般业务逻辑,循环次数不会超过三次 处理复杂业务逻辑
  1. 循环控制语句
关键字 用处
break 跳出当前循环,循环截止
continue 结束本次循环,继续执行下一次循环
pass 常用语占位