内置函数range()
用于生成一个整数序列,返回值是一个迭代器对象。可以用in和not in判断整数序列中是否存在(不存在)指定的整数
range(stop) 创建一个(0,stop)之间的整数序列,步长为1
r1=range(10)
print(r1) #返回值是一个迭代器对象
print(list(r1)) #list()用于查看range对象中的整数序列
range(start,stop) 创建一个(start,stop)之间的整数序列,步长为1 #前开后闭
r2=range(2,10)
print(list(r2))
range(start,stop,step) 创建一个(start,stop)之间的整数序列,步长为step
r3=range(2,10,2)
print(list(r3))
判断指定整数是否在序列中存在
print(10 in r3)
print(10 not in r3)
循环结构
while循环
while 条件表达式:
条件执行体(循环体)
例:计算1-100之间的偶数和
num=1
sum=0
while num<101:
if not bool(num%2): #if num%2: 表示奇数和
sum+=num
num+=1
print('1-100之间的偶数和为',sum)
for-in循环
for 自定义的变量 in 可迭代对象:
循环体
#如果在循环体中不需要使用到自定义变量,可将自定义变量写为下划线”_“
例:输出100-999之间的水仙花数(水仙花数举例:153=333+555+111)
for n in range(100,1000):
ge=n%10 #个位
shi=n//10%10 #十位
# shi=(n-ge)//10%10
bai=n//100 #百位
# bai=(n-shi*10-ge)//100
if n==ge**3+shi**3+bai**3:
print(n)
break语句
用于结束循环结构,通常与分支结构中的if一起使用
例:从键盘录入密码,最多录入3次,如果正确就结束循环
#for-in循环
for item in range(3):
password=input('请输入密码:')
if password=='123':
print('密码正确!')
break
else:
print('密码不正确!')
else: ###else与while或for搭配使用时,没有碰到break时就会执行else
print('对不起,三次密码输入错误!')
#while循环
count=0
while count<3:
password=input('请输入密码:')
if password == '123':
print('密码正确!')
break
else:
print('密码不正确!')
count+=1
else:
print('对不起,三次密码输入错误!')
continue语句
用于结束当前循环,进入下一次循环,通常与分支结构中的if一起使用
for f in range(1,51):
if f%5!=0:
continue
print(f)
嵌套循环***
例:打印九九乘法表
for i in range(1,10):
for j in range(1,i+1):
print(i,'*',j,'=',i*j,end='\t')
print()
二重循环中的break和continue用于控制本层循环
for i in range(5):
for j in range(1,11):
if j%2==0:
break #break会退出内层for j in range (1,11):循环
print(j)
for i in range(5): #外层循环执行一次,内层循环执行一整轮
for j in range(1,11):
if j%2==0:
continue
print(j,end='\t')
print()