在 Pycharm 安装使用black的方法详解


Posted in Python onApril 02, 2020

PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完 成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。

简介

针对代码风格不一致问题,导致的维护成本过高,针对性的镇定代码风格统一标准,是很有必要的。目前市面上用的比较多的python代码格式化工具有YAPF、Black。

Black,号称不妥协的代码格式化工具,它检测到不符合规范的代码风格直接就帮你全部格式化好,根本不需要你确定,直接替你做好决定。从而节省关注代码规范的时间和精力,关注编程。

安装 black 扩展

pip3 install black

安装目录

➜ servers which black
/Library/Frameworks/Python.framework/Versions/3.6/bin/black
➜ servers where black
/Library/Frameworks/Python.framework/Versions/3.6/bin/black

测试命令行使用

➜ mws git:(feature/datawarehouse-v3.0.0) ✗ python3 -m black celery_tasks/__init__.py
All done! :sparkles: :cake: :sparkles:
1 file left unchanged.

pycharm 中 集成 black

在 PyCharm 中打开 External tools

# On macOS:
PyCharm -> Preferences -> Tools -> External Tools

# On Windows / Linux / BSD:
File -> Settings -> Tools -> External Tools

在 Pycharm 安装使用black的方法详解

添加一个新的扩展工具

配置信息如下:

Name: Black
Description: Black is the uncompromising Python code formatter.
Program: /Library/Frameworks/Python.framework/Versions/3.6/bin/black
Arguments: "$FilePath$"
Working directory: $ProjectFileDir$

在 Pycharm 安装使用black的方法详解

如何使用 black 格式化代码

通过选择 Tools -> External Tools -> black 来格式化代码。

在代码区域按鼠标右键,选择 External Tools 中的 black

设置快捷键执行 black 格式化代码

打开 Preferences or Settings -> Keymap -> External Tools -> External Tools - Black

在 Pycharm 安装使用black的方法详解

black + File Watchers 自动格式化

确保 File Watchers插件可用,一般而言安装Pycharm应该会默认安装。

选择 Preferences or Settings -> Tools -> File Watchers 添加一个新的 watcher

Name: Black
File type: Python
Scope: Project Files
Program: /Library/Frameworks/Python.framework/Versions/3.6/bin/black
Arguments: $FilePath$
Output paths to refresh: $FilePath$
Working directory: $ProjectFileDir$
Uncheck "Auto-save edited files to trigger the watcher"

在 Pycharm 安装使用black的方法详解在 Pycharm 安装使用black的方法详解

特殊说明

两个设置中的参数Program使用 which black 查询出来的路径信息。

到此这篇关于在 Pycharm 安装使用black的方法详解的文章就介绍到这了,更多相关 Pycharm 安装使用black内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
深入讨论Python函数的参数的默认值所引发的问题的原因
Mar 30 Python
简化Python的Django框架代码的一些示例
Apr 20 Python
Python实现爬取逐浪小说的方法
Jul 07 Python
面向初学者的Python编辑器Mu
Oct 08 Python
Python编程在flask中模拟进行Restful的CRUD操作
Dec 28 Python
树莓派实现移动拍照
Jun 22 Python
Python 识别12306图片验证码物品的实现示例
Jan 20 Python
关于torch.optim的灵活使用详解(包括重写SGD,加上L1正则)
Feb 20 Python
Python pip install如何修改默认下载路径
Apr 29 Python
Python基于Serializer实现字段验证及序列化
Nov 04 Python
matplotlib 画动态图以及plt.ion()和plt.ioff()的使用详解
Jan 05 Python
Python OpenCV实现图形检测示例详解
Apr 08 Python
Python Numpy中数据的常用保存与读取方法
Apr 01 #Python
Python PyQt5整理介绍
Apr 01 #Python
django之导入并执行自定义的函数模块图解
Apr 01 #Python
在脚本中单独使用django的ORM模型详解
Apr 01 #Python
Python视频编辑库MoviePy的使用
Apr 01 #Python
python json.dumps中文乱码问题解决
Apr 01 #Python
Django Admin后台添加数据库视图过程解析
Apr 01 #Python
You might like
一个目录遍历函数
2006/10/09 PHP
php实现批量下载百度云盘文件例子分享
2014/04/10 PHP
PHP记录搜索引擎蜘蛛访问网站足迹的方法
2015/04/15 PHP
PHP与Web页面的交互示例详解一
2020/08/04 PHP
jQuery插件ajaxfileupload.js实现上传文件
2020/10/23 Javascript
jQuery判断checkbox选中状态
2016/05/12 Javascript
vue实现ToDoList简单实例
2017/02/07 Javascript
Ionic3 UI组件之Gallery Modal详解
2017/06/07 Javascript
在vue中created、mounted等方法使用小结
2020/07/21 Javascript
[01:29]2014DOTA2展望TI 剑指西雅图DK战队专访
2014/06/30 DOTA
[57:38]2018DOTA2亚洲邀请赛3月30日 小组赛A组 OpTic VS OG
2018/03/31 DOTA
[00:44]华丽开场!DOTA2勇士令状带来全新对阵画面
2019/05/15 DOTA
python中对list去重的多种方法
2014/09/18 Python
Python内置函数—vars的具体使用方法
2017/12/04 Python
Python断言assert的用法代码解析
2018/02/03 Python
详解flask入门模板引擎
2018/07/18 Python
Python做智能家居温湿度报警系统
2018/09/25 Python
python实现小球弹跳效果
2019/05/10 Python
Windows下Pycharm远程连接虚拟机中Centos下的Python环境(图文教程详解)
2020/03/19 Python
Python @property及getter setter原理详解
2020/03/31 Python
python手机号前7位归属地爬虫代码实例
2020/03/31 Python
Python requests模块cookie实例解析
2020/04/14 Python
Python求区间正整数内所有素数之和的方法实例
2020/10/13 Python
Django中日期时间型字段进行年月日时分秒分组统计
2020/11/27 Python
HTML5实现文件断点续传的方法
2017/01/04 HTML / CSS
波兰补充商店:Muscle Power
2018/10/29 全球购物
什么是Assembly(程序集)
2014/09/14 面试题
质量月活动策划方案
2014/03/10 职场文书
公司年会主持词
2014/03/22 职场文书
咖啡店创业计划书
2014/08/15 职场文书
村道德模范事迹材料
2014/08/28 职场文书
典型事迹材料范文
2014/12/29 职场文书
合同审查法律意见书
2015/06/04 职场文书
如何在C++中调用Python
2021/05/21 Python
探讨Java中的深浅拷贝问题
2021/06/26 Java/Android
windows server2012 R2下安装PaddleOCR服务的的详细步骤
2022/09/23 Servers