使用vscode开发python
# 使用vscode配置python开发环境
https://www.cnblogs.com/shine-lee/p/10234378.html
# 配置code-runner的python环境
https://blog.csdn.net/lojloj/article/details/102849195 安装插件code-runner, 配置python虚拟环境:
# 配置pylint
# 在行级别或者文件级别配置pylint
https://blog.csdn.net/u013687821/article/details/51127070
行级别 (W0102:dangerous-default-value)
def file_travesal(dirtectory='.', file_list=[]): # pylint: disable=W0102
'''
Get file list from the directory including files in its subdirectories.
'''
file_list += [join(dirtectory, f) for f in listdir(dirtectory)
if isfile(join(dirtectory, f))]
for item in listdir(dirtectory):
if isdir(join(dirtectory, item)):
file_travesal(join(dirtectory, item), file_list)
2
3
4
5
6
7
8
9
10
文件级别,在文件开始的地方加入下面的注释
#! usr/bin/python
# pylint: disable=used-before-assignment
# pylint: disable=no-member
''' Docstring... '''
2
3
4
5
6
7
# pylint中 import pyqt时有错误提示
https://blog.csdn.net/ouening/article/details/81805771
VS Code Pylint出现E0611:No name 'Qt' in module 'PyQt5.QtCore'解决办法
软件平台:VS Code,pylint 在VS 中使用pylint,编辑pyqt5文件时出现了很多代码错误提示,通过网上查找资料得到下面解决方法:
原因:新版pylint默认不支持外部扩展模块,(出于安全性考虑) pyqt5是C++写的外部扩展,因此在【用户设置】那里把pyqt加入pylint的白名单:
"python.linting.pylintArgs": [
"--extension-pkg-whitelist=PyQt5"
]
2
3
pylint doesn't load any C extensions by default, because those can run arbitrary code. Since you probably trust PyQt, run pylint with --extension-pkg-whitelist=PyQt
# vscode中配置pylint disable一些规则
前两行是vscode自身的配置,跟pylint无关
{
"workbench.colorTheme": "Quiet Light",
"window.zoomLevel": 1,
"python.linting.pylintArgs": [
"--extension-pkg-whitelist=PyQt5",
"--disable=C0326",
"--disable=multiple-imports",
"--disable=superfluous-parens",
"--disable=missing-function-docstring",
"--disable=wrong-import-order",
"--disable=missing-module-docstring",
"--disable=trailing-whitespace",
"--disable=line-too-long",
"--disable=logging-not-lazy",
"--disable=missing-class-docstring",
"--disable=bare-except",
"--disable=trailing-newlines",
"--disable=broad-except",
"--disable=no-member",
"--disable=attribute-defined-outside-init",
"--disable=arguments-differ",
"--disable=access-member-before-definition",
"--disable=logging-format-interpolation",
"--disable=generated-members",
"--good-names=a,b,c,d,i,j,k,wi,GlobalData,id,DB"
]
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
如果使用django,可以这样: https://www.cnblogs.com/chaojihexiang/p/6417835.html (opens new window)
//安装pylint-django
pip install pylint-django
//配置vscode的settings
{
"python.linting.pylintArgs": [
"--load-plugins",
"pylint_django"
]
}
2
3
4
5
6
7
8
9
10
也可以按照提示级别进行屏蔽:
https://jingyan.baidu.com/article/fdbd4277b0241fb89e3f482b.html
disable=C,R,W
C, vonvention, 惯例
R, refactor, 重构
W, warning
E, error
F, fatal
2
3
4
5
6
7
# unused variable 如果是占位需要可以使用下划线
https://blog.csdn.net/yyt_1995/article/details/92992500
W0612(unused-variable)定义了变量却没有使用 如果是需要占位,则使用下划线开头
# pylint详细配置规则
https://github.com/robot527/python_primer/blob/master/pylint.conf
这里面讲了更详细的配置规则,不仅仅是disable掉某条规则。如果在vscode中使用该配置,需要在前面加上--, 如--disable, --good-names
# pylint完整的规则列表
官网:https://www.pylint.org/
官网里面有完整的规则列表:the complete check list,可以查看你需要disable的规则代码。 https://pylint.readthedocs.io/en/latest/technical_reference/features.html