vscode运行python_vscode python 调试

vscode运行python_vscode python 调试Vscode+python+flake8安装配置使用总述Vscode+python环境下,配置flake8与yapf,以及使用方法1.1. Flake8——Python静态代码检查工具Flake8是由Python官方发布的一款辅助检测Python代码是否规范的工具,相对于目前热度比较高的Pylint来说,Flake8检查规则灵活,支持集成额外插件,扩展性强。Flake8是对下面三个工具的封装: PyFlakes:静态检查Python代码逻辑错误的工具。 Pep8:静态检查PEP

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Vscode+python+flake8 安装 配置 使用

  1. 总述
    Vscode+python环境下,配置flake8与yapf,以及使用方法

1.1. Flake8——Python静态代码检查工具
Flake8 是由Python官方发布的一款辅助检测Python代码是否规范的工具,相对于目前热度比较高的Pylint来说,Flake8检查规则灵活,支持集成额外插件,扩展性强。Flake8是对下面三个工具的封装:

 PyFlakes:静态检查Python代码逻辑错误的工具。

 Pep8: 静态检查PEP8编码风格的工具。

 NedBatchelder’s McCabe script:静态分析Python代码复杂度的工具。

不光对以上三个工具的封装,Flake8还提供了扩展的开发接口。

官方文档:https://pypi.python.org/pypi/flake8/

——参考:Python静态代码检查工具Flake8

1.2. yapf——python代码格式化工具

YAPF(Yet Another Python Formatter)是Google开源的一个用来格式化Python代码的工具,可以一键美化代码。支持2种代码规范:

 PEP8
 Google style

  1. 安装与配置

2.1. 安装
进入cmd(快捷键win+R),依次输入如下命令:

pip install flake8
pip install yapf

2.2. 配置vscode
1、打开settings.json文件
在这里插入图片描述
在这里插入图片描述

打开settings.json,加入如下配置:

    "python.linting.flake8Enabled": true,
    "python.formatting.provider": "yapf",
    "python.linting.flake8Args": ["--max-line-length=248"], 
    "python.linting.pylintEnabled": false 
  1. 使用方法

3.1. yapf使用

1、在VS Code中,打开某个python文件,如下:

在这里插入图片描述

按下快捷键 Alt+Shift+F ,即可自动格式化代码,效果如下:
在这里插入图片描述

3.2. flake8使用
1、保存/打开py文件时,自动检测,并显示结果
在这里插入图片描述
注:如果同时打开多个py文件,那么此处显示所有打开的PY文件的检测结果,如下所示
在这里插入图片描述
2、cmd命令: flake8 文件名
在这里插入图片描述
注:命令行启动检测结果与自动结果一致,格式不同而已

3.3. flake8命令行详解

1、McCabe 复杂度默认情况下是不会输出的,必须携带参数
flake8 a.py –max-complexity=5

2、以通过 –ignore 忽略指定输出
flake8 a.py –ignore E501,E231,E203

3、通过 –select 参数设置只展示指定输出
flake8 a.py –select F401

3.4. vscode 自动检测复杂度的方法
1、 settiongs.json中添加参数–max-complexity=5
2、 自动检测时,就包括复杂度检测结果了
详见如下:
在这里插入图片描述

  1. 错误码含义

Flake8 基础错误返回码一共有三类:

 E***/W***:PEP8 中的 error 和 warning,例如:

.\readCfg.py:32:24: W291 trailing whitespace
.\readCfg.py:34:5: E265 block comment should start with ‘# ’
.\readCfg.py:38:1: W293 blank line contains whitespace
.\readCfg.py:39:28: E231 missing whitespace after ‘,’
.\readCfg.py:42:1: W293 blank line contains whitespace

 F***:通过 PyFlakes 检测出的 error,其实 PyFlakes 本身是不提供错误返回码的,flake8 对 pyflakes 返回的错误消息进行了分类,例如:

.\HeartBeatController.py:10:5: F841 local variable ‘i’ is assigned to but never used
.\HeartBeatController.py:11:5: F841 local variable ‘j’ is assigned to but never used
.\HeartBeatController.py:13:5: F841 local variable ‘ii’ is assigned to but never used

 C9**:通过 McCabe 检测出的代码复杂度,例如:

.\dealwithDB.py:343:1: C901 ‘getWhereResult’ is too complex (9)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194584.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • idea注释模版配置(吐血推荐!!!)[通俗易懂]

    idea注释模版配置(吐血推荐!!!)[通俗易懂]idea注释模版配置idea作为越来越多程序员使用的开发工具,平时的代码注释也非常的关键,下面介绍一下类上注释和方法上注释,方便大家的开发配置,同时也为自己以后配置留一份记录(毕竟每次换环境都需要重新配置一遍)1、新建类的时候自动添加类注释(1)按照上图的提示,找到位置1的FileandCodeTemplates(2)选择右侧的Files选项卡,选择位置2的Class(如果需要设置接口和枚举的注释模版,只需要选择Interface和Enum,按照步骤3配置一下就ok了)(3)在

    2022年9月30日
    3
  • JVM成神之路-类加载机制-双亲委派,破坏双亲委派

    概述概念虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接时候用的Java类型。类的生命周期类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用、卸载。其中验证、准备、解析统称为连接上图中,加载、验证、准备、初始化和卸载这5个阶段的顺序是确定的,类的加载过程必须严…

    2022年4月16日
    36
  • 为项目选择的python解释器无效_PyCharm中创建项目时,在所创建的python虚拟环境下的pip失效问题…

    为项目选择的python解释器无效_PyCharm中创建项目时,在所创建的python虚拟环境下的pip失效问题…在文里,我简单地叙述了使用PyCharm创建一个flask项目时遇到的问题,以及解决这个问题的过程。其中比较值得注意的点有:①PyCharm创建新项目时的解释器配置②Python虚拟环境的创建等。一、问题描述在pyCharm中创建flask项目时,在建立好虚拟环境,开始自动用pip工具安装flask的时候,软件提示:Installflaskfailed。如图所示:PyCharm版本为2019…

    2022年8月26日
    3
  • Android开发-API指南- Calendar Provider

    Android开发-API指南- Calendar ProviderAndroid官方文档原创译文《CalendarProvider》。CalendarProvider是用来存放用户日历事件(event)的数据库。通过CalendarProvider的

    2022年7月1日
    27
  • codetemp-2: CObject::AssertValid()

    codetemp-2: CObject::AssertValid()原型:[virtual]voidCObject::AssertValid()const//说明:该成员函数只能对成员变量做”引用型”操作,不能做”加工型”操作{ASSERT(this!=NULL);}MSDN:Whenyouwriteyourownclass,youshouldoverridetheAssertValidfunc…

    2022年7月15日
    15
  • 数据库基础知识(MySQL入门)

    数据库基础知识(MySQL入门)数据库基础知识(MySQL入门)文章目录数据库基础知识(MySQL入门)一.基本概念二.特点一.基本概念Information,信息是对客观世界中各种事物的运动状态和变化的反映,是数据的含义。Data,数据用来记录信息的可识别符号,是信息的具体表现形式,是信息的载体。DB(DataBase)数据库,用来存储数据的仓库,保存了一系列有组织的数据。DBA(DateBaseAdministrator)数据库管理员,负责管理和操作数据库。DBAP(DataBaseApplicationP

    2022年8月20日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号