首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我有一个双引号字符串中的字典,试图使用json.loads将其转换为普通字典,但得到json解码错误

我有一个双引号字符串中的字典,试图使用json.loads将其转换为普通字典,但得到json解码错误
EN

Stack Overflow用户
提问于 2021-11-21 10:11:27
回答 1查看 39关注 0票数 1

尝试使用json.loads从字符串中获取字典,但获取异常JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)

下面是contract_details格式的字符串值,任何人都可以尝试:

代码语言:javascript
复制
contract_details = "{'instrumentToken': 17098, 'instrumentName': 'BANKNIFTY', 'name': nan, 'lastPrice': 333.05, 'expiry': '07OCT21', 'strike': 37800.0, 'tickSize': 0.05, 'lotSize': 25, 'instrumentType': 'OI', 'segment': 'FO', 'exchange': 'NSE', 'isin': nan, 'multiplier': 1, 'exchangeToken': 40728, 'optionType': 'PE'}"

contract_details = current_order["contract_details"]
contract_details = json.loads(contract_details)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-21 10:25:37

正如错误消息Expecting property name enclosed in double quotes所建议的那样,json要求字符串中的值括起双引号。如果可能,您可以更改源文件,或者在contract_details上使用replace("'", '"')将单引号替换为双引号,还需要将'nan'替换为'NaN'

代码语言:javascript
复制
json.loads(contract_details.replace("'", '"').replace('nan', 'NaN'))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70053557

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档