python中循环结构有两种:for循环和while循环
循环的作用:让部分代码重复执行
1.怎么使用for循环
- 1)语法
for 变量 in 序列:
循环体
2)说明
for、in:关键字,固定写法
变量:需要满足变量名的要求
序列:容器类型的数据,Python中常见的序列字符串、列表、元祖、集合字典、迭代器、生成器、range
::号是固定写法
循环体:与for保持一个缩进的一条或多条语句3)执行过程
让变量从序列中一个一个的取数据,取完为止,每取一个值执行一个循环体,序列中数据的个数决定了循环的次数
for char in 'pytohn':
print(char,end=',')
2. range函数
range函数是python的一个内置函数,用来生成数字序列,python2中的range是xrange
range(n):产生数字范围:0~n-1的整数
range(m,n):产生m~n-1的整数
range(m,n,step):产生m~n-1的数,且步进为step,即每次增加步长step
作用:a.结合for循环控制循环次数。b.
print('')
print(range(10))
print(type(range(10)))
练习1:使用for循环计算1+2+...+100
sum = 0
for a in range(101):
sum += a
print(sum)
练习2:打印出所有的水仙花数
print('所有的水仙花数')
for num in range(100,1000):
a = num//100
b = num//10 % 10
c = num % 10
sum = a**3 + b**3 + c**3
if sum == num:
print(num,end = ',')
练习3:统计100以内个位数上是5的个数
count = 0
for num in range(5,100):
if num % 10 == 5:
count += 1
print(count)
3.while循环
- 1)语法
while 条件语句:
循环体
其他语句
2)说明
while:关键字,固定写法
条件语句:python支持的类型的数据、已经声明过得变量、运算表达式
::号,固定写法
循环体:和while保持一个缩进的一条或多条语句,条件语句为真是,
会被执行,直到条件语句为假3)执行过程
先判断条件语句是否为True,如果为True就执行循环体;执行完循环体,再判断条件语句是否为True,如果为True,再次执行循环体, 直到条件语句结果为False,循环就结束
练习1:计算1+2...+100
sum1 = 0
a = 0
while a < 101:
sum1 += a
a += 1
print(sum1)
练习2:打印所有的水仙花数
b = 100
while b < 1000:
ge = b % 10
fen = b//10 % 10
bai = b//100
sum1 = ge**3 + fen**3 + bai**3
if sum1 == b:
print(b)
b += 1
- 4)while循环控制数字的产生
num = 100
while num > 0:
print(num)
num -= 1
4. for循环和while循环
再python中for循环能做到的事情,while循环都可以做到;while循环能做到的事情,for循环不一定能做到。循环次数确定的时候用for循环;循环次数不确定的时候用while循环
练习:猜数字:输入一个数字判断是否为指定数字
num = int(input('请输入一个你想的数字:')) #注意:num = 1;就少了输入的代码。因为一开始就让num不等于猜的数字。
while num != 0:
num = int(input('差一点就答对了,继续加油。请重新输入一个你想的数字:'))
print('恭喜你答对了')
5. break、continue、else
- 1.continue
它是循环体内的关键字,用来结束当次循环
当执行循环体的时候遇到了continue,当次循环直接结束,循环体中continue后面的语句不在执行。直接进入下一次循环的判断
sum1 = 0
for x in range(101):
if x % 2 == 1:
continue
sum1 += x
print(sum1)
- 2.break
break是循环体中的关键字,遇到break直接结束整个循环
while True:
value = input('请输入一个数字')
if value == '0':
print('答对了')
break
- 3.else
- 1)for循环的完整结构
for 变量 in 序列:
循环体
else:
代码块
其他语句
- 2)while循环的完整结构
while 条件语句:
循环体
else:
代码块
其他语句
当循环自然死亡(for中变量将序列中的数据取完了;while后边的条件语句的值为Flase),else后面的代码块才会执行
- 3)应用
可以通过else来检查循环有没有遇到break
for x in range(10):
print(x)
else:
print('循环自然死亡')