Python的for循环[附带简单示例]
在Python中,for循环是一种迭代函数。如果你有一个序列对象,比如一个列表,你可以使用for循环来迭代列表中的项目。
for循环的功能与您在许多其他编程语言中看到的功能没有太大的区别。
在本文中,我们将详细探讨Python的for循环,并学习如何迭代不同的序列,包括列表、元组等等。此外,我们还将学习使用break和continue语句来控制循环的流程。
Python的for循环的基本语法。
在Python中,for循环的基本语法看起来类似于以下所示的样式。
for itarator_variable in sequence_name:
Statements
. . .
Statements
让我更好地解释Python for循环的语法。
- The first word of the statement starts with the keyword “for” which signifies the beginning of the for loop.
- Then we have the iterator variable which iterates over the sequence and can be used within the loop to perform various functions
- The next is the “in” keyword in Python which tells the iterator variable to loop for elements within the sequence
- And finally, we have the sequence variable which can either be a list, a tuple, or any other kind of iterator.
- The statements part of the loop is where you can play around with the iterator variable and perform various function
使用for循环,逐个打印字符串的字母。
Python的字符串是由字符组成的序列。如果在你的编程应用程序中,你需要逐个遍历字符串的字符,你可以在这里使用for循环。
这是你的情况会如何进行的。
word="anaconda"
for letter in word:
print (letter)
输出:
a
n
a
c
o
n
d
a
这个循环能够运行的原因是因为Python将“字符串”视为字符序列,而不是整个字符串的观点。
使用for循环迭代遍历Python的列表或元组
列表和元组都是可迭代对象。让我们现在看看如何循环遍历这些对象中的元素。
words= ["Apple", "Banana", "Car", "Dolphin" ]
for word in words:
print (word)
输出:
Apple
Banana
Car
Dolphin
现在,让我们继续并开始对元组中的元素进行循环工作。
nums = (1, 2, 3, 4)
sum_nums = 0
for num in nums:
sum_nums = sum_nums + num
print(f'Sum of numbers is {sum_nums}')
# Output
# Sum of numbers is 10
3. 嵌套Python的循环
当我们在一个for循环内部添加另一个for循环时,这就被称为嵌套的for循环。嵌套的for循环有多种应用。
请考虑上述的列表示例。for循环从列表中打印出单个单词。但是,如果我们希望打印出列表中每个单词的单个字符呢?
这就是嵌套的for循环比较合适的地方。第一个循环(父循环)将逐个遍历单词。第二个循环(子循环)将遍历每个单词的字符。
words= ["Apple", "Banana", "Car", "Dolphin" ]
for word in words:
#This loop is fetching word from the list
print ("The following lines will print each letters of "+word)
for letter in word:
#This loop is fetching letter for the word
print (letter)
print("") #This print is used to print a blank line
产出
4. 使用Python的循环,使用range()函数
Python range()是一个内置函数之一。当你想让for循环运行特定次数,或者需要指定要打印的对象范围时,range函数非常有效。考虑以下示例,我想打印数字1、2和3。
for x in range(3):
print("Printing:", x)
# Output
# Printing: 0
# Printing: 1
# Printing: 2
range函数除了起始值和结束值之外,还可以接受另一个参数。这个参数是步长参数,用来告诉range函数在每次计数之间跳过多少个数字。
在以下的例子中,我使用了数字3作为步骤,你可以看到输出的数字是前一个数字加上3。
for n in range(1, 10, 3):
print("Printing with step:", n)
# Output
# Printing with step: 1
# Printing with step: 4
# Printing with step: 7
5. 使用 for 循环的中断语句
当满足特定条件时,break语句用于提前退出for循环。它在特定条件满足时用于中断for循环。
假设我们有一个数字列表,想要检查某个数字是否存在。我们可以遍历数字列表,如果找到了数字,就退出循环,因为我们不需要继续遍历剩余的元素。
在这种情况下,我们将在我们的for循环中使用Python的if else条件语句。
nums = [1, 2, 3, 4, 5, 6]
n = 2
found = False
for num in nums:
if n == num:
found = True
break
print(f'List contains {n}: {found}')
# Output
# List contains 2: True
6. 在for循环中使用的continue语句。
我们可以在for循环中使用continue语句,以跳过特定条件下的for循环体执行。
假设我们有一个数字列表,我们想要打印出正数的总和。我们可以使用continue语句来跳过负数的for循环。
nums = [1, 2, -3, 4, -5, 6]
sum_positives = 0
for num in nums:
if num < 0:
continue
sum_positives += num
print(f'Sum of Positive Numbers: {sum_positives}')
6. 带有 else 块的 Python for 循环
我们可以在Python的for循环中使用else块。只有当for循环没有被break语句终止时,才会执行else块。
假设我们有一个函数,只有当所有的数字都是偶数时,才打印出数字的总和。
如果存在奇数,我们可以使用break语句来终止for循环。我们可以在else部分打印总和,这样只有在for循环正常执行时才会打印出来。
def print_sum_even_nums(even_nums):
total = 0
for x in even_nums:
if x % 2 != 0:
break
total += x
else:
print("For loop executed normally")
print(f'Sum of numbers {total}')
# this will print the sum
print_sum_even_nums([2, 4, 6, 8])
# this won't print the sum because of an odd number in the sequence
print_sum_even_nums([2, 4, 5, 8])
# Output
# For loop executed normally
# Sum of numbers 20
结论是
在Python中,for循环与其他编程语言非常相似。我们可以在for循环中使用break和continue语句来改变执行的流程。然而,在Python中,我们还可以在for循环中使用可选的else块。
希望你从上面的教程中获得了一些有趣的想法。如果你有任何问题,请在下方评论中告诉我们。