vscode 无法格式化python代码、无法格式化C++代码(vscode格式化失效)另一种解决办法:用外部工具yapf格式化(yapf工具)

news2024/11/18 15:48:11

文章目录

    • 我真的
    • 解决方法:用yapf
    • yapf工具使用方法
    • 示例
      • 格式化单个文件(格式化前先用-d参数预先查看格式化更改内容,以决定是否要更改)
      • 格式化某个目录
      • 递归格式化某个目录

我真的

神马情况,我的vscode死活不能格式化python代码,还有C++代码也不能格式化,json代码都能格式化,为啥到python、C++就不行了。。。。

(格式化json代码)

在这里插入图片描述

在这里插入图片描述

(格式化python代码)

在这里插入图片描述

在这里插入图片描述

都无反应。。。

解决方法:用yapf

弄了半天解决不了。。。只能用外部工具解决了,就是麻烦点

搞了个外部工具yapf来格式化python代码

安装方法:

pip install yapf

如果要格式化everythingMemory.py,就执行:

yapf -i Untitled-1.py

在这里插入图片描述

立马给格式化了

在这里插入图片描述

yapf工具使用方法

yapf -h
usage: yapf [-h] [-v] [-d | -i | -q] [-r | -l START-END] [-e PATTERN] [--style STYLE] [--style-help] [--no-local-style] [-p] [-m] [-vv] [files [files ...]]

Formatter for Python code.

positional arguments:
  files                 reads from stdin when no files are specified.

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  -d, --diff            print the diff for the fixed source
  -i, --in-place        make changes to files in place
  -q, --quiet           output nothing and set return value
  -r, --recursive       run recursively over directories
  -l START-END, --lines START-END
                        range of lines to reformat, one-based
  -e PATTERN, --exclude PATTERN
                        patterns for files to exclude from formatting
  --style STYLE         specify formatting style: either a style name (for example "pep8" or "google"), or the name of a file with style settings. The default is pep8 unless a
                        .style.yapf or setup.cfg or pyproject.toml file located in the same directory as the source or one of its parent directories (for stdin, the current
                        directory is used).
  --style-help          show style settings and exit; this output can be saved to .style.yapf to make your settings permanent
  --no-local-style      don't search for local style definition
  -p, --parallel        run YAPF in parallel when formatting multiple files.
  -m, --print-modified  print out file names of modified files
  -vv, --verbose        print out file names while processing
用法:yapf [-h] [-v] [-d | -i | -q] [-r | -l START-END] [-e PATTERN] [--style STYLE] [--style-help] [--no-local-style] [-p] [-m] [-vv] [files [files ...]]

Python代码格式化工具。

位置参数:
  files                 当未指定文件时从stdin读取。

可选参数:
  -h, --help            显示帮助信息并退出
  -v, --version         显示程序的版本号并退出
  -d, --diff            打印修复后源代码的差异
  -i, --in-place        直接修改文件
  -q, --quiet           不输出任何内容并设置返回值
  -r, --recursive       递归运行目录下的文件
  -l START-END, --lines START-END
                        指定要重新格式化的行范围,从1开始计数
  -e PATTERN, --exclude PATTERN
                        排除格式化的文件模式
  --style STYLE         指定格式化样式:可以是样式名称(例如"pep8""google"),也可以是包含样式设置的文件名。默认样式是pep8,除非在源代码所在目录或其父目录中找到.style.yapf或setup.cfg或pyproject.toml文件(对于stdin,使用当前目录)。
  --style-help          显示样式设置并退出;可以将此输出保存到.style.yapf文件中以使设置永久生效
  --no-local-style      不搜索本地样式定义
  -p, --parallel        在格式化多个文件时并行运行YAPF。
  -m, --print-modified  打印修改过的文件名
  -vv, --verbose        在处理过程中打印文件名

示例

实际使用时可选择只格式化单个文件,格式化某个目录,或者递归格式化某个目录下所有文件。。

格式化单个文件(格式化前先用-d参数预先查看格式化更改内容,以决定是否要更改)

yapf -d /path/to/file.py
yapf -i /path/to/file.py

在这里插入图片描述

格式化某个目录

yapf -d /path/to/dir
yapf -i /path/to/dir

(这个我没测试过)

递归格式化某个目录

yapf -d -r /path/to/dir
yapf -i -r /path/to/dir

(这个我没测试过)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/756499.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

路径规划算法:基于减法平均优化的路径规划算法- 附代码

路径规划算法:基于减法平均优化的路径规划算法- 附代码 文章目录 路径规划算法:基于减法平均优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要:本文主要介绍利用智能优化…

用Python自动化处理Excel表格详解

Excel表格基础知识 Excel表格可以帮助用户创建、编辑、格式化和计算数据,并生成各种图表和报表。Excel表格通常用于商业、金融、科学、教育等领域。 Excel表格的常用操作 Excel表格的常用操作包括插入、删除、移动、复制、粘贴、排序和筛选、图表等。这些操作可以…

node操作MySQL数据库

本文节选自我的博客:node 操作 MySQL 数据库 💖 作者简介:大家好,我是MilesChen,偏前端的全栈开发者。📝 CSDN主页:爱吃糖的猫🔥📣 我的博客:爱吃糖的猫&…

集群基础4——haproxy负载均衡mariadb

文章目录 一、环境说明二、安装配置mariadb三、安装配置haproxy四、验证 一、环境说明 使用haproxy对mysql多机单节点进行负载均衡。 主机IP角色安装服务192.168.161.131后端服务器1mariadb,3306端口192.168.161.132后端服务器2mariadb,3306端口192.168.…

【2023 年第二届钉钉杯大学生大数据挑战赛初赛】 初赛 A:智能手机用户监测数据分析 问题一Python代码分析

2023 年第二届钉钉杯大学生大数据挑战赛初赛 初赛 A:智能手机用户监测数据分析 问题一Python代码分析 1 题目 2023 年第二届钉钉杯大学生大数据挑战赛初赛题目 初赛 A:智能手机用户监测数据分析 一、问题背景 近年来,随着智能手机的产生&a…

STM32F10x外部中断/事件控制器(EXTI)应用

往期文章: STM32F1x固件库函数学习笔记(一) 文章目录 一、EXTI简介二、EXTI初始化结构体详解三、外部中断(EXTI)编程要点及例程参考文献 一、EXTI简介 外部中断/事件控制器,简称:EXTI&#x…

Jenkins打包、发布、部署

目录 前言 一、安装jdk 二、安装maven 三、安装git 四、安装jenkins 五、访问jenkins 六、创建用户 七、配置jenkins 八、执行 总结 前言 服务器:CentOS 7.9 64位 jdk:1.8 maven:3.9.1 git:git version 1.8.3.1 jenkins&a…

计算机中的数制与编码(二进制转换)

一、进制表示 1. 十进制表示 使用(0,1,2,…,9)十位数字表示,十进制运算时逢十进一。 2. 二进制表示 使用(0,1)两个数字表示,二进制运算时逢二进一。 3. 十六进制表示…

AIGC文生图:stable-diffusion-webui部署及使用

1 stable-diffusion-webui介绍 Stable Diffusion Web UI 是一个基于 Stable Diffusion 的基础应用,利用 gradio 模块搭建出交互程序,可以在低代码 GUI 中立即访问 Stable Diffusion Stable Diffusion 是一个画像生成 AI,能够模拟和重建几乎…

宝塔面板清理

查看磁盘使用情况时发现/dev/sda1满了,重启服务器也不行,瞎折腾了半天,才发现是宝塔的回收站占了较大的磁盘,于是按以下操作清理了下,就可以了 1、清除系统监控记录。打开宝塔面板后台,找到监控&#xff0c…

模拟面试2

1.说一说ArrayList的实现原理? ArrayList底层基于数组实现,内部封装了Object类型的数组,实现了list接口,通过默认构造器创建容器时,该数组被初始化为一个空数组,首次添加数据时再将其初始化为容量为10的数组…

变量生命符thread_local

thread_local是c11为线程安全引进的变量声明符。 thread_local是一个存储器指定符: 所谓存储器指定符,其作用类似命名空间,指定了变量名的存储期以及链接方式。同类型的关键字还有: static:静态或者线程存储期&…

2.我的第一个 JAVA 程序Helloword

对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。类:类是一个模板,它描述一类对象的行为和状态。…

前端videojs实现m3u8格式的直播

一、安装 npm install --save-dev video.js 二、引入 import videojs from "video.js"; import "video.js/dist/video-js.css"; 三、template 由于此处客户需要全屏至指定框大小,而不是全屏整个屏幕所以没用插件自带的全屏控件 隐藏自带全屏…

Unity 2DJoint 物理关节功能与总结

本文将以动图方式展示每个2D物理关节的效果,并解析部分重要参数的作用以及常见调配方式。 1.Distance Joint 2D(距离关节) 顾名思义是距离关节,以下为启用EnableCollision前后 关节使得两物体保持一定的距离,如果旋…

Apache (二十一)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、概述 二、安装 1. yum安装 2. 编译安装 三、 目录结构 1. yum安装 2. 编译安装 四、虚拟主机头配置 1. 基本配置 2. 实现方式 五、配置文件语法检查 六、 …

MySQL [环境配置]

MySQL [环境配置] MySQL的下载sqlyog的下载 熟悉老陈的人, 都清楚我不喜欢写这些环境配置的博客 那为啥这次要写一下MySQL的环境配置呢? 因为我被这一个小小的环境配置困扰了很长时间, 淋过雨的人都想为别人撑一把伞, 我不希望我的铁汁们也被这个问题困扰 MySQL的下载 MySQL下…

3. 测试 - 软件测试生命周期 BUG 的级别和生命周期

目录 1. 软件测试的生命周期 2. 描述 BUG 2.1 为什么要进行描述 2.2 如何描述一个 BUG 练习描述 BUG:邮箱登录不上去 练习描述 BUG:ie下界面显示异常,界面文字有重叠 3. BUG 的级别 4. BUG 的生命周期 1. 软件测试的生命周期 软件的…

【kubernetes系列】Kubernetes之Ingress

概述 从前面的学习,我们可以了解到Kubernetes暴露服务的方式目前常见的只有三种:LoadBlancer Service、NodePort Service、Ingress;而我们需要将集群内服务提供外界访问就会面临以下几个问题: Pod 漂移问题 Kubernetes 具有强大…

ubuntu 不能检测到显卡信息

开始时:lspci | grep -i nvidia 01:00.0 VGA compatible controller: NVIDIA Corporation Device 2489 (rev a1) 01:00.1 Audio device: NVIDIA Corporation Device 228b (rev a1) 运行sudo update-pciids 运行 lspci | grep -i nvidia 找到显卡了