PyCharm - 如何将项目中的所有标识符重命名为自动snake_case?



我在Python中有一个相当大的项目(超过3000行(,不幸的是,语法不尊重PEP8,这是现在需要的。我特别在寻找将所有函数从camelCase样式重命名为snake_case样式的方法。

到目前为止,我只找到了这个答案,它拒绝了在 PyCharm 中自动重命名所有变量的可能性,并建议手动重命名,我不想这样做,因为代码中有数千个变量。

那么,有没有办法,如何根据上面的规则自动重命名所有变量呢?

我对函数/正则表达式不感兴趣,它们只对一个字符串感兴趣,我真的只对"集体"解决方案感兴趣。

你可以试试骆驼蛇-pep8,来自官方描述:

一种重构工具,可帮助将骆驼案转换为蛇案和虎钳 反之亦然,在 Python 程序中,符合 PEP-8 风格指南。 它使用/滥用Python-Rope来查找和执行更改。这 程序以交互方式显示建议的更改并查询用户 至于是否接受变更。

要安装,请运行以下命令:

$ <activate your virtual environment>
$ pip install rope colorama
$ wget https://raw.githubusercontent.com/abarker/camel-snake-pep8/master/src/camel_snake_pep8/camel_snake_pep8.py

之后,转到项目的文件夹并运行以下命令:

$ python2 camel_snake_pep8.py . *.py

该程序可用于重构 Python 2 或 Python 3 代码,但它必须与 Python 2 一起运行。这是因为,截至2017年3月,Python-Rope仅支持Python 2(据说Python 3版本正在进行中(。 有时这不起作用,因为 python 3 的特定语法,例如:

def pick(l: list, index: int) -> int:
return l[index]

在这种情况下,您必须使此类表达式的语法与 python2 兼容。请投票/帮助绳索项目的问题以支持 python3。

最新更新