While循环
-
while语句
- 循环的作用就是让 指定的代码 重复的执行
- while 循环最常用的应用场景就是 让执行的代码 按照 指定的次数 重复 执行
-
练习:打印 5 遍 Hello Python
遇到while语句时,首先计算表达式的值
如果表达式的值为假,则跳过整个while语句,继续执行下面的代码;
如果表达式的值为真,则执行循环体。
执行完“循环体”再次计算“表达式”的值。
如此循环往复直到“表达式”的值为假才停止循环 -
练习:高斯求和
计算1+2+3+……+100的和
# 高斯求和
n = 2
result = 0
while n<10001:
result += n
n += 2
print(result)
for
- 语法
for 变量 in 数据序列:
# 循环体(需要执行的操作)
Python for 循环可以遍历任何可迭代对象,如一个列表或者一个字符串。 for循环的一般格式如下:
for <variable> in <sequence>:
<statements>
else:
<statements>
range() 函数
- 如果你需要遍历数字序列,可以使用内置 range() 函数。它会生成数列,例如:
for i in range(5):
print(i)
- 你也可以使用 range() 指定区间的值:
for i in range(5,9) :
print(i)
- 也可以使 range() 以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做'步长'):
for i in range(0, 10, 3) :
print(i)
- 您可以结合 range() 和 len() 函数以遍历一个序列的索引,如下所示
a = ['Google', 'Baidu', 'Runoob', 'Taobao', 'QQ']
for i in range(len(a)):
print(i, a[i])
结果:
0 Google
1 Baidu
2 Runoob
3 Taobao
4 QQ
for i in range(10):
print('hello')
print(i)
- 1!+2!+3!..+n!
result2 = 0
for n in range(20):
if n>0:
result = 1
for i in range(n+1):
if i>0:
result *= i
print(result)
result2 += result
print(result2)
- break
作用:退出循环
注意:只能跳出距离最近的for或者while循环
在循环过程中,如果 某一个条件满足后,不 再希望 循环继续执行,可以使用 break 退出循环
n = 5
for i in range(2,n):
if n%i==0:
print(n,'不是质数')
break
else:
print(n,'是质数')
- continue
作用:跳过本次循环后面的剩余语句,然后继续下一次循环
注意:只能跳过距离最近的for或者while循环
for i in range(5):
if i==2:
continue
print(i)
- pass
作用:当语句要求不希望任何命令或代码来执行时使用
说明:
pass语句表示一个空操作,在执行时没有任何的响应,pass的位置最终应该有代码来执行,只不过暂时写不出来
知识总结
习题
1.下列关于for循环说法正确的是? B
A. 循环变量i是从1开始的。
B. range后面括号中的数字表示循环的次数。
C. for循环语句中只能有一句下级代码。
D. 循环变量i的值是一直不变的。
2.执行这段代码,打印的结果是 B
3.下列哪个选项可以在输出区打印5遍hello?
4.执行以下代码的运行结果是(D )
- 以下哪个选项可以在输出区打印出以下内容( )
0
python
1
python
2
python
6. while循环,在给定的判断条件为True时(B)循环体,否则退出循环体。
A. 不执行
B. 执行
C. 不确定
D. 无法确定
- for循环是用来(A)执行语句
A. 重复
B. 无限
C. 无穷 D. 不停
- break是在语句块执行过程中终止循环,并且(A)整个循环。
A. 跳出
B. 终止
C. 执行
D. 重复
-
- 输出 九九乘法表,格式如下:
'''
1x1=1
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
...
...
1x9=9.........9x9=81
'''
for i in range(9):
for j in range(i+1):
print('%dx%d=%d'% (j+1,i+1,(j+1)*(i+1)),end=' ')
print()