问题描述
我在程序开始时循环加载我的字典。 它包含以下值。
{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())