字典 returns none 尽管其中存在键

Dictionary returns none in spite of key existing in it

我在程序开始时循环加载我的字典。 它包含以下值。

{3456: ['TATAMOTORS'], 13404: ['SUNTV'], 3718: ['VOLTAS'], 3499: ['TATASTEEL'], 
5900: ['AXISBANK'], 2885: ['RELIANCE'], 15083: ['ADANIPORTS'], 11287: ['UPL']}

当我得到流数据时,我想知道股票是多少。例如。如果我通过 3718,我应该得到 'VOLTAS'。上面的字典永远不会改变。

我的代码如下。 Stream_data 是 json。并且令牌被正确获取

token=stream_data['response']['data']['sym'].replace('_NSE','').strip()
print(token)
print(imp.dictoftokens)
stock = imp.dictoftokens.get(token)

我做错了什么?我在控制台中试了一下并手动传递了一个令牌,它工作正常。

看起来你的 token 对象是 str 类型,但你的键是 int:

类型

将令牌类型更改为 int,它应该会按预期工作:

token=int(stream_data['response']['data']['sym'].replace('_NSE','').strip())