一文讲清Python For循环的概念和用法
什么是 For 循环?
Python 中的 for 循环用于迭代序列(例如列表、元组或字符串)或其他可迭代对象。它允许对序列中的每个项目执行操作,使其成为处理数据集合的有效方法。
For 循环的语法
下面是 for 循环的基本语法:
for item inequence:
# 对序列中的每个项目执行的代码
循环首先将序列中的第一项分配给变量item。然后,执行循环内的代码块。对于序列中的每个项目,都会继续此过程。
示例:迭代列表
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
在此示例中,for 循环迭代水果列表。对于每次迭代,当前的水果被分配给变量fruit,并被打印。
使用range()功能
range()函数生成一个数字序列,可以在 for 循环中使用。
for i in range(5):
print(i)
在此示例中,for 循环迭代数字 0 到 4。i在每次迭代中为变量分配当前数字。
迭代字符串
for 循环也可用于迭代字符串中的字符。
for char in "hello":
print(char)
此代码将在新行上打印字符串“hello”的每个字符。
else与 For 循环一起使用
与 while 循环一样,您可以有一个else与 for 循环关联的块。当循环else完成所有迭代而没有遇到break.
for i in range(5):
print(i)
else:
print("Loop completed without break")
在此示例中,else将执行该块,因为循环完成了所有迭代。
在 For 循环中使用break 和dcontinue
可以在 for 循环中使用break和语句来控制其行为。continue
for i in range ( 5 ):
if i == 3 :
break # 当 i 为 3 时退出循环
print (i)
i在本例中,由于该语句,循环将在等于 3 时退出break。
for i in range ( 5 ):
if i == 3 :
continue # 跳过循环的其余部分并继续下一次迭代
print (i)
在此示例中,当i等于 3 时,continue将执行该语句。这会跳过打印 3 并继续下一次迭代。
enumerate()在 For 循环中使用
enumerate()函数用于循环序列中的元素及其索引。
fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):
print(f"Index {index}: {fruit}")
输出帐单为:
Index 0: apple
Index 1: banana
Index 2: cherry
zip()在 For 循环中使用
该zip()函数用于同时迭代多个序列。
names = ["John", "Jane", "Bob"]
ages = [30, 25, 35]
for name, age in zip(names, ages):
print(f"{name} is {age} years old"))
sorted()在 For 循环中使用排序
Python 中的该sorted()函数用于对特定可迭代对象(例如列表、元组或字符串)中的元素进行排序。它返回一个新的排序列表,而不修改原始的可迭代对象。
numbers = [5, 2, 8, 1, 3]
sorted_numbers = sorted(numbers)
print(sorted_numbers) # Output: [1, 2, 3, 5, 8]
列表推导式
列表推导式是在 Python 中创建列表的一种简洁方法。它们允许您通过将表达式应用于现有可迭代对象(如列表、元组或范围)中的每个项目来生成新列表,还可以选择包含过滤项目的条件。
# 生成平方列表
squares = [x** 2 for x in range ( 5 )]
# 输出:[0, 1, 4, 9, 16]
# 过滤奇数
odd_numbers = [x for x in range ( 10 ) if x % 2 != 0 ]
# 输出: [1, 3, 5, 7, 9]
嵌套 For 循环
就像 while 循环一样,您可以嵌套 for 循环。这意味着一个 for 循环可以位于另一个 for 循环内。
for i in range(3):
for j in range(3):
print(f"({i}, {j})")
输出将是
( 0 , 0 )
( 0 , 1 )
( 0 , 2 )
( 1 , 0 )
( 1 , 1 )
( 1 , 2 )
( 2 , 0 )
( 2 , 1 )
( 2 , 2 )
创建图案
在 Python 中创建模式涉及使用循环来生成字符或数字的特定排列。图案的范围可以从简单的形状到复杂的设计。以下是使用循环的模式示例:
打印方形图案:
size = 5
for i in range (size):
for j in range (size):
print ( "* " , end= "" )
print ()
输出:
* * * * *
* * * * * *
* * *
* * * * * * * *
* * * * *
打印直角三角形图案:
size = 5
for i in range (size):
for j in range (i+ 1 ):
print ( "* " , end= "" )
print ()
输出:
*
* *
* * *
* * * * * *
* * * * *