字典字符串上的Python ast.literal_eval不起作用(SyntaxError:语法无效)

时间:2017-02-10 13:59:38

标签: syntax-error

我正在尝试使用JSON数据处理数据集。但是,数据已写入文件而未进行解析。这意味着python字典在文件中作为字符串而不是作为字符串的JSON对象写入。

我找到了一个模块(AST),可以使用ast.literal_eval函数再次将字符串转换为字典。

但是,我在某些情况下遇到了一个非常奇怪的错误:

Error when parsing using ast.literal_eval

代码从文本文件中读取并将以下内容应用于每一行:

ast.literal_eval(line.rstrip())

似乎AST模块中的某些字符不正常。

还需要回忆一下,所有数据集都没有发生这种情况,只是有些情况。

有什么想法吗?

非常感谢提前。

1 个答案:

答案 0 :(得分:0)

尝试浏览json包。将字符串转换为字典是更清晰,更标准的方法

json.loads(inputStr) // Converts string -> dict
json.dumps(inputJson) // Converts dict -> string

希望这会有所帮助。干杯!