[英]How do I make hierarchical lists python
我正在尝试在python中创建层次结构列表python。 例如,有几种状态。 每个州有几个县,每个县有几个城市。 然后,我可以打电话给那些人。 我尝试创建列表并将列表追加到那些列表,但是我无法正常工作。 它也变得非常混乱。 谢谢
我刚刚找到了这个例子:
tree = [
['Food', [
['Fruit', [
['Red', ['Cherry', 'Strawberry']],
['Yellow', ['Banana']],
]],
['Meat', [
['Beef', 'Pork']
]],
]],
]
现在我的问题就是,这是最好的方法吗? 如何称呼特定的事物? 如果我用...
print tree[0]
它会给我一切。 当我尝试
print tree[0[1]]
我收到TypeError类型的错误:“ int”对象没有属性“ __getitem_”,谢谢
您问题的直接答案是该列表可能是正确创建的,但是您没有正确访问它。
您可以像这样访问嵌套列表:
tree[0][1]...
不像这样
tree[0[1[..]]]
但是,您应该使用字典,而不是列表。 这将使您的查找更加简单,并且查找效率也会更高。
如果您有兴趣了解字典的工作方式。 Google称为“关联数组”。 它们也称为哈希表或哈希表。
此外,而不是使用期限分级术语多维是比较常见的。
例如:
mylist=[
[...],
[...],
.
.
]
是二维列表
字典是必经之路。
d = {'food':
{'fruit':
{'color':
{'red': ['Cherry', 'Strawberry']},
{'yellow': ['Banana']},
},
},
{'meat': ['Beef', 'Pork']}
}
现在您可以执行以下操作:
for item in d['food']['fruit']['color']['red']:
print(item)
# Cherry
# Strawberry
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.