打印lis中列表的名称

2024-04-18 03:42:33 发布

您现在位置:Python中文网/ 问答频道 /正文

你好,我正在尝试打印列表中的列表名称。我尝试了以下方法,但我所能做的就是在列表中打印列表的值。不是列表的名称:

list1 = [1,2,3]
list2 = [1,2]
list3 = [1,2,3,4]
lists = [list1,list2,list3]

for x in lists:
  if len(x) == 4:
  print (x)

Tags: 方法in名称列表forleniflists
3条回答

在这里使用dictionary

>>> dic = {'list1': range(1, 4), 'list2':range(1, 3), 'list3':range(1, 5)}
>>> for k, v in dic.items():
...     if len(v) == 4:
...         print k
...         
list3

在这里使用lists = [list1,list2,list3]是行不通的,因为这个赋值只会创建对三个list对象的新引用。你知道吗

>>> lists[0] is list1
True

因此,对象[1,2,3]现在有两个引用list1lists[0]。你知道吗

是的,你可以做,但不能用列表。你最好用字典。在python中,字典是一种哈希结构,其键和值与键相关联。使它们成为键值对。
通常情况下

d = {'one':1,'two':2}  

可以像打印“1”的print d[one]那样访问

就你的情况来说,我们可以用同样的格言。。。你知道吗

d = {'list1': list1,'list2': list2,'list3': list3}  

当调用类似print d[list1]时,它会打印list1的所有元素。:)

这是不可能的。 您可能需要考虑使用dict,使用名称作为键,并将列表设置为值。你知道吗

相关问题 更多 >