Ubuntu22.04下vscode安装python代码格式化(Format Document)black模块及设置
相关:
如何在vscode中支持python的annotation(注解,type checking)——通过设置pylance参数实现python注解的type checking
ubuntu22.04系统环境下使用vs code安装pylint检查python的代码错误
pylance是检查并发现coding中的错误。
pylint是检查代码格式是否规范并给出提示,而代码格式化工具如black是对不规范风格的代码进行自动修改,这两个工具一个是发现不规范的地方,一个是对不规范的地方进行修改,但是要知道的一点是这两个工具在使用时是没有任何关联的。
=================================================
在vscode中,按键 ctrl+shift+p,打开命令框,打开user settings:

设置格式化的工具,这里设置为black:

执行格式化:
设置并安装好black后对于想要格式化的代码文件使用快捷键,ctrl+shift+i,便可格式化。
不同操作系统下vscode的格式化快捷键并不同,这里给出linux系统下的快捷键链接:
https://code.visualstudio.com/shortcuts/keyboard-shortcuts-linux.pdf

===========================================
一个实例,下面的代码是没有格式化之前的:
import math, sys; def example1():
####This is a long comment. This should be wrapped to fit within 72 characters.
some_tuple=( 1,2, 3,'a' );
some_variable={'long':'Long code lines should be wrapped within 79 characters.',
'other':[math.pi, 100,200,300,9876543210,'This is a long string that goes on'],
'more':{'inner':'This whole logical line should be wrapped.',some_tuple:[1,
20,300,40000,500000000,60000000000000000]}}
return (some_tuple, some_variable)
def example2(): return {'has_key() is deprecated':True}.has_key({'f':2}.has_key(''));
class Example3( object ):
def __init__ ( self, bar ):
#Comments should have a space after the hash.
if bar : bar+=1; bar=bar* bar ; return bar
else:
some_string = """
Indentation in multiline strings should not be touched.
Only actual code should be reindented.
"""
return (sys.path, some_string)

按键 ctrl+shift+i,后:

可以看到代码的格式变得好看了很多,这就是 格式化模块black的作用。其实,我个人是不建议使用代码格式化的,因为你在编写代码的时候就尽量遵照pep8的规范就好了,而这个代码格式化的工具都是在你写完代码后使用的,这种事后修补的方法还是不如事前修补。当然如果你是在企业里coding,因而需要遵照一定的代码格式自然可以使用代码格式化工具在代码写完后校验一下风格,这时候建议使用的代码格式化插件为yapf,这是Google的Python代码格式化程序,而个人coding的话还是在coding的时候就做好格式化是最好的了。
================================================
Ubuntu22.04下vscode安装python代码格式化(Format Document)black模块及设置的更多相关文章
- Ubuntu14.04下如何安装Python爬虫框架Scrapy
按照官方文档的说明,安装scrapy 需要以下程序或者库: (1).Python 2.7 (2).lxml. Most linux distributions ships PRepackaged ve ...
- Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python)
Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python) 前提是已经安装了python2,python3 1)安装各种依赖库 sudo apt-get update ...
- VsCode写Python代码!这代码简直和大神一样规范!太漂亮了!
VsCode写Python代码!这代码简直和大神一样规范!太漂亮了! 转 https://www.jianshu.com/p/636306763d89 VsCode虽然没有Pycharm的功能齐 ...
- 下破解安装Python开发工具WingIDE4.1
步骤: 1.将系统时间调整到一个月之前,然后执行安装. 可以使用date命令调整系统时间,如:date -s '2012-08-14 10:00:00' 2.安装成功后,打开程序,按照提示信息,申请一 ...
- Ruby入门--Linux/Windows下的安装、代码开发及Rails实战
Ruby入门--Linux/Windows下的安装.代码开发及Rails实战 http://www.linuxidc.com/Linux/2014-04/100242.htm Ubuntu 13.04 ...
- ubuntu14.04下编译安装ambari-2.4.2.0
ubuntu14.04下编译安装ambari-2.4.2.0 编译前的准备工作 准备工作有: 系统参数 系统依赖(编译环境) 离线安装包 java环境 maven环境 Nodejs环境 git环境 a ...
- Ubuntu14.04下Ambari安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)
不多说,直接上干货! 写在前面的话 (1) 最近一段时间,因担任我团队实验室的大数据环境集群真实物理机器工作,至此,本人秉持负责.认真和细心的态度,先分别在虚拟机上模拟搭建ambari(基于CentO ...
- windows下如何安装Python、pandas
windows下如何安装Python.pandas 本篇主要涵盖以下三部分内容: Python.Pycharm的安装 使用Pycharm创建.运行Python程序 安装pandas 1.Python. ...
- Ubuntu 14.04 下手动安装Firefox的Flash插件
有时候我们不得不採用手动安装一些软件. Ubuntu 14.04 下手动安装Firefox的Flash插件有下面几步 1. 下载Flash插件 下载地址为http://get.adobe.com/cn ...
- eclipse在Ubuntu 13.04下的安装过程
eclipse在Ubuntu 13.04下的安装过程及问题小记 一.eclipse安装过程 首先确保在安装eclipse之前已经安装好Java虚拟机 1. eclipse官网下载压缩包 下载地址:ht ...
随机推荐
- 第四届物联网与机器学习国际学术会议(IoTML 2024)
[ACM独立出版,高录用,见刊检索快速稳定]第四届物联网与机器学习国际学术会议(IoTML 2024) [IoTML 2023会后三个半月内完成EI检索]2024 4th International ...
- linux日志查询less及堡垒机查询日志方法
方法1tail -f orderFile.log | grep "关键字" postman接口请求的时候,关注控制台对关键字过滤的打印输出. 方法2less 文件名称/ 关键字n ...
- Ubuntu 18.04 安装OneDrive自动同步
Ubuntu 18.04 安装OneDrive自动同步 Windows10系统已经自带了OneDrive的自动同步功能,对于多设备用户而言已经成为了一个非常方便传输保存文件的途径,在Ubuntu下也有 ...
- 基于TI Sitara系列AM5728工业开发板——FPGA视频开发案例分享
前 言 3 1 cameralink_display案例 4 1.1 案例功能 4 1.2 操作说明 4 1.3 关键代码(MicroBlaze) 11 1.4 Vivado工程说明 16 1.5 模 ...
- aiohttp 子线程启动/中止服务
import time, threading from aiohttp import web import asyncio async def handler(request): return web ...
- CF1800E 题解
发现一个神奇的事实:显然不限制交换次数可以实现交换任意字符. 因此可以直接判断字符集是否相等. 在考虑哪些地方可以交换. 根据题意可知可以交换的区间为 \([1,n - k]\) 以及 \([k + ...
- 关于python3多线程和协程
以下内容部分由chatgpt生成,本文仅作为备忘和记录. asyncio.sleep 和 time.sleep 都是用于在 Python 中进行延迟操作的函数,但它们的工作方式和使用场景有一些不同. ...
- Java报表开发工具总结
Java报表工具,首先可以分成两大类:纯Java报表工具,和支持Java的报表工具. 支持Java的报表工具 支持Java的报表工具.其实就是非Java的报表工具,但是可以在Java程序中调用,这样的 ...
- Java反射机制原理详解
什么是反射? Java反射机制的核心是在程序运行时动态加载类并获取类的详细信息,从而操作类或对象的属性和方法.本质是JVM得到class对象之后,再通过class对象进行反编译,从而获取对象的各种信息 ...
- linux 查看端口状态
查看端口 netstat -tlun 查看端口被那个服务占用 netstat -tunlp |grep 8080