[Python] 循环语句

Posted 山茶花开时。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Python] 循环语句相关的知识,希望对你有一定的参考价值。

循环语句就是在符合条件的情况下,重复执行一个代码段 

1.while循环

while语句可用于在条件为真时反复执行代码块 

语法格式

while 条件语句:
    执行语句

当条件语句为真(True)时,就会执行while循环下的语句 

示例

实现1到100 的累加并输出求和结果

sum = 0
i = 1
while i <= 100:
    sum = sum+i
    i = i + 1

# 5050
print(sum)

提示Tips

① Python没有 i++或 i--这种自增或自减运算符,需要使用 i = i + 1或者 i = i - 1进行替代

② while循环必须要设置循环终止的条件,否则会陷入死循环

不过我们可以使用死循环来确保用户输入自己的名字

name = ''
while not name or name.isspace():
    name = input('Please enter your name: ')

print('Hello, !'.format(name))

while循环也可以进行嵌套使用

示例

使用while循环输出九九乘法表

i = 0
while i <= 9:
    j = 1
    while j <= i:
        print(f"j*i=j*i\\t", end = ' ')
        j = j + 1
    i = i + 1
    print()

代码运行结果如下所示

1*1=1    
1*2=2    2*2=4   
1*3=3    2*3=6   3*3=9   
1*4=4    2*4=8   3*4=12  4*4=16  
1*5=5    2*5=10  3*5=15  4*5=20  5*5=25  
1*6=6    2*6=12  3*6=18  4*6=24  5*6=30  6*6=36  
1*7=7    2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49  
1*8=8    2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64  
1*9=9    2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81  

2.for循环

语法格式

for <variable> in <sequence>:
    <statements>

示例

使用for循环计算1-10的整数之和

sum = 0
for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:
    sum = sum + x

# 55
print(sum)

for x in ...循环就是把列表中的每个元素代入变量 x,然后执行缩进语句sum = sum + x 

如果计算1-100的整数之和,按上述方式在列表中从1枚举到100有点困难,Python提供了一个创建范围的内置函数range()

语法格式

range(start, stop[, step])

start: 计数从 start 开始,默认是从 0 开始

stop: 计数到 stop 结束,但不包括 stop

step: 步长,默认为1,可选参数

range()函数可以生成一个整数序列,再通过list()函数可以转换为list列表的数据结构

# range(0, 5)
range(5)
# [0, 1, 2, 3, 4]
list(range(5))

示例

使用for循环计算1-100的整数之和

sum = 0
for x in range(1, 101):
    sum = sum + x

# 5050
print(sum)

我们也可以使用for循环迭代字典

dicts = 'x':1, 'y':2, 'z':3

'''
x
y
z
'''
for key in dicts.keys():
    print(key)

'''
1
2
3
'''
for value in dicts.values():
    print(value)

'''
x corresponds to 1
y corresponds to 2
z corresponds to 3
'''
for key, value in dicts.items():
    print(key, 'corresponds to', value)

for循环语句也可以进行嵌套使用,我们将上述使用while循环输出九九乘法表替换成使用for循环实现,代码如下所示

for i in range(1,10):
    for j in range(1,i+1):
        print(f"j*i=j*i",end='\\t')
    print(" ")
print("\\n")

3.跳出循环

通常循环会不断地执行代码块,直到条件为假或使用完序列中所有元素,但在有些情况下,可能会想中短循环或直接结束循环,这时我们就可以使用continue或break关键字实现跳出循环的功能

在循环过程中,可以通过continue语句,跳过当前的这次循环,直接开始下一次循环 

for循环结合continue使用 

students = ['Andy','Jack','Bob','Rita','Odin','Harry']

for i in students:
    if i == 'Rita':
        continue
    print(i)

执行结果如下所示

Andy
Jack
Bob
Odin
Harry

while循环结合continue使用  

'''
1
2
4
5
'''
n = 0 
while n < 5:
    n += 1
    if n == 3:
        continue
    print(n)

如果想要提前结束循环,可以使用break语句(在循环体内遇到break则会跳出循环,终止循环并且不论循环的条件是否为真,都不再继续循环 )

for循环结合break使用 

students = ['Andy','Jack','Bob','Rita','Odin','Harry']

for i in students:
    if i == 'Rita':
        break
    print(i)

执行结果如下所示

Andy
Jack
Bob

while循环结合break使用   

while True:
    flag = input('是否要退出程序?(y/n)')
    print(flag)
    if flag == 'y':
        break

执行结果如下所示

Python 循环语句

Python 循环语句

本章节将向大家介绍Python的循环语句,程序在一般情况下是按顺序执行的。

编程语言提供了各种控制结构,允许更复杂的执行路径。

循环语句允许我们执行一个语句或语句组多次,下面是在大多数编程语言中的循环语句的一般形式:

clip_image001

Python提供了for循环和while循环(在Python中没有do..while循环):

循环类型

描述

while 循环

在给定的判断条件为 true 时执行循环体,否则退出循环体。

for 循环

重复执行语句

嵌套循环

你可以在while循环体中嵌套for循环

 

循环控制语句

循环控制语句可以更改语句执行的顺序。Python支持以下循环控制语句:

控制语句

描述

break 语句

在语句块执行过程中终止循环,并且跳出整个循环

continue 语句

在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环。

pass 语句

pass是空语句,是为了保持程序结构的完整性。

以上是关于[Python] 循环语句的主要内容,如果未能解决你的问题,请参考以下文章

python013 Python3 循环语句

Python 循环语句

Python 循环语句

教程丨Python循环语句

Lesson 021 —— python 循环语句

Python 循环语句