Python学习笔记(八)----程序的流程控制for循环和while循环(中)
目录
1.Python循环结构
Python中循环结构分为两类,一类是遍历循环for
另一类是无限循环while
2.遍历循环for
2.1语法结构
for 循环变量 in 遍历对象:
语句块
for...else...
结构
for 循环变量 in 遍历对象:
语句块1
else:
语句块2
针对第二种结构中的else语句只有在循环正常结束之后才会运行(循环中遇到了break就是不正常结束)
对于第一种结构:
代码示例:
#遍历字符串
for i in 'hello':
print(i)
#range()函数,Python中的内置函数,产生一个[n,m)的整数序列,包含n但不包含m
for i in range(1,11):
if i%2==0:
print(i,'是偶数')
#计算1-10的累加和
s=0
for i in range(1,11):
s+=i
print(i)
运行结果:
h
e
l
l
o
2 是偶数
4 是偶数
6 是偶数
8 是偶数
10 是偶数
55
对于第二种扩展结构:
代码示例:
s=0#用于存储累加和
for i in range(1,11):
s+=i
else:
print('1-10的累加和为:',s)
运行结果:
1-10的累加和为: 55
2.2经典示例“水仙花数”
我们要利用python输出100-999之间的水仙花数,那么什么是水仙花数呢?
水仙花数的定义是:一个3 位数,它的每个位上的数字的 3次幂之和等于它本身
例如153=1^ 3+5^ 3+3^ 3
代码示例:
for i in range(100,1000):#要包含999
a=i%10#个位上的数字
b=i//10%10#十位上的数字
c=i//100#百位上的数字
if i==a**3+b**3+c**3:
print(i)
运行结果:
153
370
371
407
3.无限循环结构while
3.1语法结构
#第一种结构:
while 表达式:
语句块
#第二种结构:
while 表达式:
语句块1
else:
表达式2
3.2while
循环的四个步骤
- 初始化变量
- 条件判断
- 语句块
- 改变变量
代码示例:
#(1)初始化变量
answer=input('今天要上课嘛?Y/N')
while answer=='Y':#(2)条件判断
print('好好学习')#(3)语句块
#(4)改变变量
answer=input('今天上课嘛?Y/N')
#1-100之间的累加和
s=0#存储累加和
i=1#(1)初始化变量
while i<=100:#(2)条件判断
s+=i#(3)语句块
#(4)改变变量
i+=1
print('1-100之间的累加和为:',s)
运行结果:
今天要上课嘛?Y/NY
好好学习
今天上课嘛?Y/NY
好好学习
今天上课嘛?Y/NN
1-100之间的累加和为: 5050
注意:初始化变量、条件判断、改变变量的对象是同一个变量