【发布时间】:2021-07-04 13:17:12
【问题描述】:
假设我有:
a = (1,2,3,4,5)
b = (2,4,5,6,7)
c = (a,b)
其中 a、b 和 c 是元组。如何获得“a”和“b”的名称? 我正在尝试:
for x in c:
print(type(x).__name__)
但它给了我元组
【问题讨论】:
-
强制链接到Ned Batchelder
-
这里有一个微妙的区别。元组没有有个名字;它可能有一个(或多个)名称引用它,但对象不跟踪这些名称。
-
如果你这样做:
z = a; c = (a, b)?你认为c里面的名字是什么? -
a和b不是赋予元组的名称,而是相反:元组被分配给这些名称。元组本身与这些名称没有任何关系。你可以改用dict吗?例如:c = {"a": a, "b": b},如果您只需要值,只需使用c.values()。 -
您的循环将是:
for k,v in c: print(k),其中 k 为键(名称),v 为值(本例中为元组)。
标签: python