我有一段代码,我正在尝试理解并需要帮助。
import numpy as np
Class_numbers=np.array(['a','b','c'])
students_per_class=np.array([10,20,30])
print("Students counts per class:\n{}".format(
{x: y for x, y in zip(Class_numbers, students_per_class)}))
输出:
Students counts per class:
{'a': 10, 'b': 20, 'c': 30}
我理解的内容: 1- 我们使用 {} 和 .format(...) 来用 ... 替换 {}
以下是我的问题:
Q1- 我不理解 "for x, y in zip(Class_numbers, students_per_class)"。这是否类似于二维循环?为什么我们需要zip?我们能够没有zip函数而有二维循环吗?
Q2- 我不理解如何使用x:y!编译器是否自动理解“x:y”中x和y的定义(例如在for循环中)在该行的其余部分中已说明?
附注:我精通MATLAB,但我刚接触Python,有时会感到非常困惑!
艾赫桑