如何在Python中转换关联数组?

6 投票
2 回答
13977 浏览
提问于 2025-04-17 01:15

我刚开始学习Python,很多东西还不太明白,找不到相关的信息。我有一个关联数组 item

item['id'] = 0
item['title'] = 'python'

我想检查一下这个数组里的内容,但我不想用具体的索引名称,比如 'title',我只是想用一个for循环,遍历这个数组里的所有条目,不管它们的具体含义是什么。像这样

for a in range(0, len(item)):
    print (item[a])

有没有什么想法或者建议呢?

2 个回答

6

有三种方法可以遍历一个字典:

item = {...}
for key in item: # alternatively item.iterkeys(), or item.keys() in python 3
    print key, item[key]

item = {...}
for value in item.itervalues(): # or item.values() in python 3
    print value

item = {...}
for key, value in item.iteritems(): # or item.items() in python 3
    print key, value
21

在Python中,关联数组被称为字典

遍历字典的一个好方法是使用.iteritems()

for key, value in item.iteritems():
    print key, value 

如果你只需要获取值,可以使用.itervalues()

for value in item.itervalues():
    print value 

随着你对Python和字典了解得越来越多,记得区分一下.iteritems()/itervalues()(返回的是一个迭代器)和items()/values()(返回的是一个列表)之间的不同。

在Python 3中

.iteritems()/.itervalues()已经被移除,而items()/values()/keys()会返回对应序列的迭代器。

for key, value in item.items():
    print(key)
    print(value)

撰写回答