18. 练习:Zip 和 Enumerate(选学)

练习:组合坐标

使用 zip 写一个 for 循环,该循环会创建一个字符串,指定每个点的标签和坐标,并将其附加到列表 points 。每个字符串的格式应该为 label: x, y, z 。例如,第一个坐标的字符串应该为 F: 23, 677, 4

Start Quiz:

x_coord = [23, 53, 2, -12, 95, 103, 14, -5]
y_coord = [677, 233, 405, 433, 905, 376, 432, 445]
z_coord = [4, 16, -6, -42, 3, -6, 23, -1]
labels = ["F", "J", "A", "Q", "Y", "B", "W", "X"]

points = []
# write your for loop here


for point in points:
    print(point)

练习:将列表组合成字典

使用 zip 创建一个字典 cast ,该字典使用 names 作为键,并使用 heights 作为值。

Start Quiz:

cast_names = ["Barney", "Robin", "Ted", "Lily", "Marshall"]
cast_heights = [72, 68, 72, 66, 76]

cast = # replace with your code
print(cast)

练习:拆封元组

cast 元组拆封成两个 names heights 元组。

Start Quiz:

cast = (("Barney", 72), ("Robin", 68), ("Ted", 72), ("Lily", 66), ("Marshall", 76))

# define names and heights here


print(names)
print(heights)

练习:用 Zip 进行转置

使用 zip data 从 4x3 矩阵转置成 3x4 矩阵。实际上有一个很酷的技巧。如果想不出答案的话,可以查看解决方案。

Start Quiz:

data = ((0, 1, 2), (3, 4, 5), (6, 7, 8), (9, 10, 11))

data_transpose = # replace with your code
print(data_transpose)

练习:Enumerate

使用 enumerate 修改列表 cast ,使每个元素都包含姓名,然后是角色的对应身高。例如, cast 的第一个元素应该从 "Barney Stinson" 更改为 "Barney Stinson 72”

Start Quiz:

cast = ["Barney Stinson", "Robin Scherbatsky", "Ted Mosby", "Lily Aldrin", "Marshall Eriksen"]
heights = [72, 68, 72, 66, 76]

# write your for loop here


print(cast)