#some dictionary data{}
data = {1:[3,1,4,2,6]}
如何打印数据的密钥,即
print( key_of(data) ) #print in some ways.
输出:
1
到目前为止,我得到的是使用data.keys()
函数,但是每当我使用该函数时,输出都会像:
dict_keys([1])
那么,该功能有什么问题。任何人都可以建议我的答案。?
#some dictionary data{}
data = {1:[3,1,4,2,6]}
如何打印数据的密钥,即
print( key_of(data) ) #print in some ways.
输出:
1
到目前为止,我得到的是使用data.keys()
函数,但是每当我使用该函数时,输出都会像:
dict_keys([1])
那么,该功能有什么问题。任何人都可以建议我的答案。?
没有问题dict.keys
,它返回一个类似于 Python3 中的对象的视图。您可以list()
在 dict 上使用来获取键列表。
>>> data = {1:[3,1,4,2,6]}
>>> keys = list(data)
>>> keys
[1]
>>> keys[0]
1
注意:如果 dict 包含多个键,则顺序可以是任意的,并且keys[0]
可以返回任何键。
>>> dic = {'a12': 1, 'sd':'sdfd', 'sdfsd': 'sdfsd'}
>>> list(dic) #Arbitrarily ordered
['sdfsd', 'sd', 'a12']
只需这样做:
print(list(data))
打印所有键。如果要打印特定密钥,则必须搜索它:
print(next(key for key, value in data.items() if value == something))
请注意,不能保证键的顺序。
>>> data = {'a': 1, 'aa': 2, 'b': 3, 'cd': 4}
>>> list(data)
['cd', 'a', 'b', 'aa']
>>> data['f'] = 1
>>> list(data)
['cd', 'a', 'b', 'aa', 'f']
>>> del data['a']
>>> list(data)
['cd', 'b', 'aa', 'f']
>>> data[1] = 1
>>> list(data)
['cd', 1, 'b', 'aa', 'f']
>>> for c in ('cde', 'fgh', 'ijk', 'rmn'):
... data[c] = 1
...
>>> list(data)
[1, 'aa', 'cde', 'cd', 'rmn', 'b', 'ijk', 'fgh', 'f']
请注意键如何不遵循字母顺序,以及插入的键并不总是附加到键列表中。在一些插入之后,一些密钥也被交换了。删除/插入键可以以不可预知的方式更改顺序。