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')