PyCharm - 如何重命名所有标识符项目自动snake_case?(PyCharm - how

2019-09-26 14:41发布

我有Python中的相当大的项目(超过3000小线),不幸的是,语法不尊重PEP8,现在是需要的。 我在寻找尤其是对于来自重命名所有功能的方式camelCase风格snake_case风格。

到目前为止,我只找到这个答案 ,即拒绝在PyCharm自动重命名所有变量的可能性,并建议做手工,我不希望因为有成千上万的在代码中的变量。

那么,有没有一种方法,根据上述规则,如何自动重命名所有的变量?

我不感兴趣的功能/正则表达式,它做了一个字符串,我真的只是在“集体”的解决方案感兴趣。

Answer 1:

您可以尝试骆驼蛇PEP8 ,从官方的介绍:

一个重构工具,以帮助骆驼转换成蛇的情况下,反之亦然在Python程序,与PEP-8风格指南一致。 它使用/滥用的Python绳找到并执行更改。 该程序以交互显示提议的变更,并询问用户是否或不接受更改。

安装运行这些命令:

$ <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的绳仅支持Python 2(一个Python版本3被说成是进行中)。 有时,这是行不通的,因为对于蟒蛇3,如特定语法,:

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

在这种情况下,你必须做出这样的表达式语法与python2兼容。 请投票/帮助绳项目的问题 ,以支持python3。



文章来源: PyCharm - how to rename all identifiers in project to snake_case automatically?