我有以下列表:
ma_list:
{'Short_windows': 1, 'Long_windows': 2, 'Cover_windows': 2}
但我无法使用ma_list[0]
获取Short_windows's
值1。
如何获得Short_windows
,Long_windows
,Cover_windows's
值?
如果我尝试打印ma_list['Short_windows']
它将显示以下错误:
TypeError:list indices必须是整数,而不是str
答案 0 :(得分:1)
那不是list
,而是dict
,您需要使用密钥访问这些值:
>>> d = {'Short_windows': 1, 'Long_windows': 2, 'Cover_windows': 2}
>>> d['Short_windows']
1
可替换地:
>>> for key, value in d.items():
... print key, value
...
Short_windows 1
Long_windows 2
Cover_windows 2
答案 1 :(得分:1)
您可以使用dic.get('key')
获取特定值。
但由于词典未订购,因此没有get.(index)
方法。
您可以使用OrderedDic
来保持元素的顺序
OrderedDic
的文档位于:https://docs.python.org/2/library/collections.html#collections.OrderedDict
答案 2 :(得分:1)
由于这是一本字典,你可以通过键获得价值:
ma_dict = {'Short_windows': 1, 'Long_windows': 2, 'Cover_windows': 2}
ma_dict['Short_windows'] = 1
字典在Python中是无序的。如果您不关心条目的顺序并且想要通过索引访问键或值,则可以使用ma_dict.keys()[0]
和ma_dict.values()[0]
或ma_dict.items()[0]
。
如果您关心条目的顺序,从Python 2.7开始,您可以使用collections.orderdDict或odict。