Python 2to3 - 不删除 unicode 前缀

Python 2to3 - do not remove unicode prefixes

我正在将遗留代码库转换为 python3 并进行一些 2to3 的试运行。 2to3 从 unicode 文字中删除 u'' 前缀,在差异中产生大量噪音。有没有办法禁用它(因为 u'my string' 是有效的 py3 语法)?

来自帮助:

2to3 --help
...
  -x NOFIX, --nofix=NOFIX
                        Prevent a transformation from being run
  -l, --list-fixes      List available transformations
...

对于 --list-fixes,我们找到要忽略的转换,unicode

结果:2to3 --nofix=unicode.

根据 https://docs.python.org/2/library/2to3.html,您可以通过 -x 选项排除某些修复程序。

也许以下内容会满足您的要求。

2to3 -x unicode example.py