Python入门:3.3循环

for循环

for  ever_letter in 'Hello world':
    print(ever_letter)
#for    item   in    iterable:
#关键字  元素  关键字   集合 
#      do something
#缩进 
for num in range(1,11):
#range(1,11),1-11的数,但不包括11
    print(str(num)+'+1=',num+1)

代码表达的是:将1-10范围内的每个数字依次装入变量num中,每次展示一个num+1的结果。在这个过程中,变量num循环赋值10次。

for和if结合使用

songslist['Holy Diver','Thunderstruck','Rebel Rebel']
song=input()
for song in songslist:
    if song=='Holy Diver':
       print(song+'-Dio')
    if song=='Thunderstruck':
       print(song+'-AC/DC')
    if song=='Rebel Rebel':
       print(song,'-David Bowie')

程序功能:将列表中的歌名依次装入变量song中,并与if语句进行匹配。

嵌套循环

九九乘法表

for i in range(1,10):
    for j in range(1,10):
        print('{}X{}={}'.format(i,j,i*j))

最外层的循环依次将数值1-9储存到变量i中,变量i每取一次值,内层循环就要依次将1-9存储在变量j中,最后展示当前的i,j,与i*j的结果。

while循环

如果条件不成立

while condition:
#关键字  成立条件
      do something
#缩进

为了防止while一直循环,可以在循环过程中制造某种可以使循环停下来的条件

count=0
while True:
      print('Repeat this line ')
      count+=1
      if count==5:
         break
#给一个叫count的变量赋值为0使它计数,我们希望在循环次数为5的时候停止,在if下面写入一个break的作用就是告诉程序在上面条件成立停下来

利用循环增加变量是常见的技巧,随着循环不仅可以增加,还可以随着循环减少(n-1),甚至成倍增加(n=n*3)。
另一种方法是改变使循环成立的条件。
为之前的登录函数添加功能:输入密码错误超出3次就禁止再次输入密码。

password_list=['*#*#','12345']
def accont_login2():
    tries=3
    while tries>0:
        password=input('password')
        password_correct=password==password_list[-1]
        password_reset=password==password_list[0]
        if password_correct:
           print('login success')
        elif password_reset:
           new_password=input(enter a new password:)
           password_list.append(new_password)
           print('your password has changed successfully')
           accont_login2()
        else:
           print('wrong password or invalid input')
           tries-=1;
           accont_login2()
        else:
           print('your account has been suspended')

猜你喜欢

转载自blog.csdn.net/weixin_42289215/article/details/82829142