如何将python2长整数语法读入python3中?

时间:2018-07-31 15:27:45

标签: python python-3.x

我有一个使用python2编写的旧文件,其中包含诸如148191387849281587952L之类的内容。 当我尝试在python3中使用ast.literal_eval读取它时,我自然会得到SyntaxError: invalid syntax

有什么办法可以将文件读入python3吗?

PS。我目前看到的唯一解决方案需要修改文件:

  1. 转换为JSON:将文件读入python2,使用json写入,然后使用json读入python3。

  2. 使用L删除有问题的sed -i 's/([0-9]+)L/\1/g'

  3. 使用2to3(@ user3080953建议)转换文件。

还有什么更好的吗?

1 个答案:

答案 0 :(得分:0)

澄清后,有一个简单的答案:

否,您无法将ast.leteral_eval()或python解释器修改为与L语法“向后兼容”。