(Python) 字典无法识别键
(Python) Dictionary not recognizing keys
这可能是一个愚蠢的。
所以,我有这本字典,其中包含一些键。
当我打印键(作为列表)时,
keys = list(dict.keys())
print(keys)
我得到输出:
[b'batch_label', b'labels', b'data', b'filenames']
到目前为止一切顺利。但是,当我尝试访问其中之一时,
return dict['labels']
我遇到一个关键错误 ('labels')。这是为什么?
您的键不是字符串,而是 bytes
对象。因此,您应该以 bytes
访问它们
x[b'label']
注意
>>> b'label' is'label'
False
>>> b'label' == 'label'
False
如果您不想以这种方式访问,您可以通过指定编码类型将它们解码为字符串。例如,
new_dict = {k.decode('utf-8'): v for k,v in x.items()}
现在你可以做
new_dict['label']
这可能是一个愚蠢的。 所以,我有这本字典,其中包含一些键。 当我打印键(作为列表)时,
keys = list(dict.keys())
print(keys)
我得到输出:
[b'batch_label', b'labels', b'data', b'filenames']
到目前为止一切顺利。但是,当我尝试访问其中之一时,
return dict['labels']
我遇到一个关键错误 ('labels')。这是为什么?
您的键不是字符串,而是 bytes
对象。因此,您应该以 bytes
x[b'label']
注意
>>> b'label' is'label'
False
>>> b'label' == 'label'
False
如果您不想以这种方式访问,您可以通过指定编码类型将它们解码为字符串。例如,
new_dict = {k.decode('utf-8'): v for k,v in x.items()}
现在你可以做
new_dict['label']