按名称引用列表元素

2024-10-08 19:22:51 发布

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

我正试图浏览一个字典引用列表,以获得每个字典中的键数。如何引用元素的名称而不是字典的内容?audit目录列表中的每个元素都是对现有字典的引用。你知道吗

audit_dicts = [ osdata, weblogic, tomcat ]
for i in audit_dicts:
    print "Length of the %s dictionary is %d lines." % (i.name(), len(i))

我知道这与目录类型是字典有关,但是没有办法打印列表中元素的名称吗?我基本上使用这个列表来存储所有这些字典,这样我就可以在一个循环中对它们执行多个操作。还有,有没有办法在同一个循环中声明这些字典?Python是怎么做的?我目前有大约20种不同的数据字典,但在从网络数据构建字典之前,我只能对每一种数据进行单独的研究。你知道吗

for i in audit_dicts:
    i = {}

Tags: 数据in目录名称元素内容列表for
2条回答

如果为该对象设置了__name__属性,则可以使用该属性:

audit_dicts = [ osdata, weblogic, tomcat ]
for i in audit_dicts:
  name = "unknown";
  try:
    if __name__ in i:
      name = i.__name__;
  except:
    pass
  print "Length of the %s dictionary is %d lines." % (name, len(i))

但你最好用dict而不是list:

audit_dicts = {
  "osdata":osdata, 
  "weblogic":weblogic, 
  "tomcat":tomcat
  }
for key in audit_dicts:
    print "Length of the %s dictionary is %d lines." % (key, len(audit_dicts[key]))

列表不包含名称,它们包含对其他对象的引用。如果您希望能够不仅仅使用索引来引用元素,那么应该使用另一种数据结构,例如dict。你知道吗

相关问题 更多 >

    热门问题