使用并解包元组
如果您有一个元组 ('chocolate chip cookies', 15),想分别访问其中的每一部分,您可以像对列表一样使用索引。不过,您也可以将该元组"解包"为多个变量,例如 type, count = ('chocolate chip cookies', 15),这会把 type 设为 'chocolate chip cookies',把 count 设为 15。
很多时候,您需要把多个序列型数据配对在一起。zip() 函数正是用于此目的。它会返回一个由元组组成的列表,每个元组包含传给 zip() 的各个列表中的一个元素。
当遍历列表时,您还可以用 enumerate() 函数来跟踪当前位置。该函数会返回当前所处的列表项的索引以及该列表项本身。
(关于代码最后一行,我们会在下一节课进一步讲解。)
本练习是课程的一部分
Python 的数据类型
练习说明
- 使用
zip()函数将girl_names和boy_names配对,并保存到名为pairs的变量中。 - 使用
for循环遍历pairs,通过enumerate()跟踪当前位置。将遍历得到的内容解包为rank和pair。 - 将
pair解包为girl_name和boy_name。 - 按顺序打印名次、女孩名和男孩名。名次保存在
rank中。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Pair up the girl and boy names: pairs
pairs = ____
# Iterate over pairs
for ____, ____ in ____:
# Unpack pair: girl_name, boy_name
____, ____ = ____
# Print the rank and names associated with each rank
print(f'Rank {rank+1}: {girl_name} and {boy_name}')