Python for循环示例
时间:2020-02-23 14:42:42 来源:igfitidea点击:
Python for循环用于迭代序列。
for循环几乎存在于所有编程语言中。
Python for循环
我们可以使用for循环遍历列表,元组或者字符串。
for循环的语法为:
for itarator_variable in sequence_name: Statements . . . Statements
我们来看一些在Python程序中使用for循环的示例。
使用for循环打印字符串的每个字母
Python字符串是字符序列。
我们可以使用for循环遍历字符并打印出来。
word="anaconda" for letter in word: print (letter)
输出:
a n a c o n d a
遍历列表,元组
List和Tuple是可迭代的对象。
我们可以使用for循环遍历它们的元素。
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
Python嵌套循环
当我们在另一个for循环中包含一个for循环时,称为嵌套for循环。
以下代码显示了Python中嵌套的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
带有range()函数的Python for循环
Python range()是内置函数之一。
它与for循环一起使用,以运行特定次数的代码块。
for x in range(3):
print("Printing:", x)
# Output
# Printing: 0
# Printing: 1
# Printing: 2
我们还可以为范围功能指定开始,停止和步进参数。
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
带for循环的break语句
break语句用于过早退出for循环。
满足特定条件时,它用于中断for循环。
假设我们有一个数字列表,我们想检查一个数字是否存在。
我们可以遍历数字列表,如果找到了数字,请跳出循环,因为我们不需要继续遍历其余元素。
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
用for循环继续语句
我们可以在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}')
带有可选else块的Python for循环
我们可以在Python中将else子句与for循环一起使用。
仅当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

