如果mydict
不为空,我访问任意元素,如下所示:
mydict[mydict.keys()[0]]
有没有更好的方法来做到这一点?
发布于 2010-06-23 07:28:50
在Python 3上,以非破坏性和迭代的方式:
next(iter(mydict.values()))
在Python 2上,以非破坏性和迭代的方式:
mydict.itervalues().next()
如果您希望它在Python2和Python3中都能工作,您可以使用six
包:
six.next(six.itervalues(mydict))
虽然在这一点上它是相当神秘的,我更喜欢你的代码。
如果要删除任何项目,请执行以下操作:
key, value = mydict.popitem()
请注意,“第一个”在这里可能不是一个合适的术语,因为dict
不是Python < 3.6中的有序类型。Python 3.6+ dicts
是有序的。
发布于 2014-09-26 14:27:45
在python3中,方法是:
dict.keys()
在类型: dict_keys()中返回一个值,通过这种方式获取dict的键的第一个成员时会得到一个错误:
dict.keys()[0]
TypeError: 'dict_keys' object does not support indexing
最后,我将dict.keys()转换为list @ Finally,并通过list拼接方法获得了第一个成员:
list(dict.keys())[0]
发布于 2016-09-02 20:12:45
获取密钥
next(iter(mydict))
获取值的步骤
next(iter(mydict.values()))
想要两者兼得
next(iter(mydict.items())) # or next(iter(mydict.viewitems())) in python 2
前两个是Python 2和3,后两个在Python 3中是惰性的,但在Python 2中不是。
https://stackoverflow.com/questions/3097866
复制相似问题