目录
range()函数
创建range对象的三种方式
range类型的优点
循环结构
循环结构的流程图
循环的分类
语法结构
选择结构的if与循环结构while的区别
while循环
while循环的执行流程
for-in 循环
for-in的语法结构
for-in 的执行图
break/continue与else语句
break语句
流程控制语句continue
else语句
与else语句配合使用的三种情况
嵌套循环
二重循环中的break和continue
range()函数
用于生成一个整数序列。
创建range对象的三种方式
range(stop) -->创建一个(0,stop)之间的整数序列,步长为1
range(start,stop) -->创建一个(start,stop)之间的整数序列,步长为1
range(start,stop,step) -->创建一个(start,stop)之间的整数序列,步长为step
返回值是一个迭代器对象
range类型的优点
不管range对象表示的整数序列有多长,所有range对象占用的内存空间都是相同的,因为仅仅需要存储start,stop和step,只有当用到range对象时,才会去计算序列中的相关元素。
in与not in 判断整数序列中是否存在(不存在)指定的整数。
#range的创建方式 '''只有一个参数''' r=range(10) print(r) #range(0, 10) print(list(r)) #用于查看range对象中的整数序列 list是列表的意思 '''两个参数''' r1=range(1,10) print(list(r1))#[1, 2, 3, 4, 5, 6, 7, 8, 9] 从1开始到10结束(不包含10) '''三个参数''' r2=range(1,10,2) print(list(r2))#[1, 3, 5, 7, 9] '''判断整数是否在序列中 in和not in''' print(1 in r2)#True print(1 not in r2)#False
循环结构
反复做同一件事情的情况,称为循环。
循环结构的流程图
循环的分类
while
for-in
语法结构
while 条件表达式:
条件执行体(循环体)
选择结构的if与循环结构while的区别
if是判断一次,条件为True执行一行。
while是判断N+1次,条件为True执行N次。
while循环
while循环的执行流程
四步循环法
四步循环法
初始化变量
条件判断
条件执行体(循环体)
改变变量
#while循环累加和
#计算1-4的累加和
#第一步:初始化变量
a=0
sum=0
#第二步:条件判断
while a<5:
# 第三步:循环体
sum+=a
# 第四步:改变变量
a+=1
print('和为',sum)
#计算1-100之间的偶数和
#第一步:初始化变量
a=0
sum=0
#第二步:条件判断
while a<=100:
# 第三步:循环体
sum+=a
# 第四步:改变变量
a+=2
print('1-100的偶数和为:',sum)
print('----方法二------')
b=1
sum=0
while b<=100:
if b%2==0:
sum+=b
b += 1
print('1-100之间的偶数和为:',sum)
for-in 循环
in表达从(字符串、序列等)中依次取值,又称为遍历
for-in遍历的对象必须是可迭代对象
for-in的语法结构
for 自定义的变量 in 可迭代对象:
循环体
for-in 的执行图
循环体内不需要访问自定义变量,可以将自定义变量替换为下划线
for i in 'Python':
print(i)
print('--------------')
for a in range(10):
print(a)
print('------------------')
#如果在循环体中不需要使用自定义变量,可以将自定义变量写为'_'
for _ in range(5):
print('helloworld')
# Python基础
# 自学
# 时间:2022/5/20 15:28
#for in 计算1-100之间的偶数和
sum=0
for i in range(1,101):
if i%2==0:
sum+=i
print('1-100之间的偶数和为:',sum)
#输出100-999之间的所有水仙花数
#水仙花数=个位**3+十位**3+百位**3
for i in range(100,1000):
ge=i%10
shi=i//10%10
bai=i//100
if i==ge**3+shi**3+bai**3:
print(i)
break/continue与else语句
break语句
用于结束循环结构,通常与分支结构if一起使用。
#从键盘录入密码,最多录入3次,如果正确就跳出循环
for i in range(3):
pwd=input("请输入密码:")
if pwd=='6666':
print('密码正确')
break
else:
print('密码不正确')
a=1
while a<=3:
pwd=input('请输入密码:')
if pwd=='1111':
print('密码正确')
break
else:
print('密码不正确')
a+=1
流程控制语句continue
用于结束当前循环,进入下一次循环,通常与分支结构中的if一起使用。
#输出1-50之间5的倍数
for i in range(1,51):
if i%5==0:
print(i)
print('--------continue-----------')
for i in range(1,51):
if i%5!=0:
continue
print(i)
else语句
与else语句配合使用的三种情况
与if一起使用
与while一起使用
与for一起使用
for i in range(3):
pwd=input('请输入密码:')
if pwd=='8888':
print('密码正确')
break
else:
print('密码不正确')
else:
print('三次密码均有误')
a=0
while a<3:
pwd=input('请输入密码:')
if pwd=='8888':
print('密码正确')
break
else:
print('密码错误')
a+=1
else:
print('三次密码均有误')
嵌套循环
循环结构中又嵌套了另外的完整的循环结构,其中内层循环作为外层循环的循环体执行。
#输出一个三行四列的矩阵
for i in range(1,4):#打印行数
for j in range(1,5):#打印列数
print('*',end='t')#不换行输出
print()#换行
#九九乘法表
for i in range(1,10):
for j in range(1,i+1):
print(j,'*',i,'=',i*j,end='t')
print()
二重循环中的break和continue
二重循环中break和continue用于控制本层循环。
for i in range(5):
for j in range(1,11):
if j%2==0:
# break
continue
print(j,end='t')
print()



