修改yapf中的列宽限制值

yapf是一款由Google开源的Python代码自动格式化工具,它根据PEP 8规范可以帮我们自动格式化我们的代码,让代码更规范、更漂亮。但是其中最大列宽被限制为80,如果超过80,在格式化时就会被yapf换行,随着现在人们的显示器越来越大,分辨率也越来越高,我们可以将这个限制适当修改。

要修改这一数值,找到当前Python环境下的yapf的风格配置文件。如果你和我用的一样都是Anaconda,那么该文件在~/.conda/envs/mlbook/lib/python3.6/site-packages/yapf/yapflib/style.py。我使用的操作系统为Ubuntu 16.04,Anaconda版本为2019.03。不同操作系统和Anaconda版本下位置可能略有不同,请自己查找。

打开该py文件:

---省略---
ALLOW_MULTILINE_DICTIONARY_KEYS=False,
ALLOW_SPLIT_BEFORE_DEFAULT_OR_NAMED_ASSIGNS=True,
ALLOW_SPLIT_BEFORE_DICT_VALUE=True,
ARITHMETIC_PRECEDENCE_INDICATION=False,
BLANK_LINE_BEFORE_NESTED_CLASS_OR_DEF=False,
BLANK_LINE_BEFORE_CLASS_DOCSTRING=False,
BLANK_LINE_BEFORE_MODULE_DOCSTRING=False,
BLANK_LINES_AROUND_TOP_LEVEL_DEFINITION=2,
COALESCE_BRACKETS=False,
COLUMN_LIMIT=79,
CONTINUATION_ALIGN_STYLE='SPACE',
CONTINUATION_INDENT_WIDTH=4,
DEDENT_CLOSING_BRACKETS=False,
DISABLE_ENDING_COMMA_HEURISTIC=False,
EACH_DICT_ENTRY_ON_SEPARATE_LINE=True,
I18N_COMMENT='',
I18N_FUNCTION_CALL='',
INDENT_DICTIONARY_VALUE=False,
INDENT_WIDTH=4,
INDENT_BLANK_LINES=False,
---省略---

修改COLUMN_LIMIT=79,中的79为你想要的值即可。

更多yapf的自定义设置请参考:yapf

原文地址:https://www.cnblogs.com/dereen/p/python_yapf_COLUMN_LIMIT.html