在 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采用django框架实现支付宝即时到帐接口
May 17 Python
用python记录运行pid,并在需要时kill掉它们的实例
Jan 16 Python
Python3 循环语句(for、while、break、range等)
Nov 20 Python
Pyspider中给爬虫伪造随机请求头的实例
May 07 Python
Python之列表的插入&替换修改方法
Jun 28 Python
python的常用模块之collections模块详解
Dec 06 Python
python基于C/S模式实现聊天室功能
Jan 09 Python
python使用thrift教程的方法示例
Mar 21 Python
十行代码使用Python写一个USB病毒
Jun 21 Python
python通过移动端访问查看电脑界面
Jan 06 Python
Python对wav文件的重采样实例
Feb 25 Python
Python 虚拟环境工作原理解析
Dec 24 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
中国第一家无线电行
2021/03/01 无线电
php5 apache 2.2 webservice 创建与配置(java)
2011/01/27 PHP
laravel请求参数校验方法
2019/10/10 PHP
jQuery阻止冒泡和HTML默认操作
2010/11/17 Javascript
JavaScript面向对象程序设计三 原型模式(上)
2011/12/21 Javascript
多个表单中如何获得这个文件上传的网址实现js代码
2013/03/25 Javascript
js和jquery中循环的退出和继续学习记录
2014/09/06 Javascript
JavaScript拆分字符串时产生空字符的解决方案
2014/09/26 Javascript
jquery实现的V字形显示效果代码
2015/10/27 Javascript
使用postMesssage()实现iframe跨域页面间的信息传递
2016/03/29 Javascript
深入理解Angularjs中$http.post与$.post
2017/05/19 Javascript
微信小程序日历组件calendar详解及实例
2017/06/08 Javascript
解决angular双向绑定无效果,ng-model不能正常显示的问题
2018/10/02 Javascript
element-ui 时间选择器限制范围的实现(随动)
2019/01/09 Javascript
JS实现动态无缝轮播
2020/01/11 Javascript
通过实例解析js可枚举属性与不可枚举属性
2020/12/02 Javascript
深入理解python中的浅拷贝和深拷贝
2016/05/30 Python
深入理解NumPy简明教程---数组1
2016/12/17 Python
flask框架视图函数用法示例
2018/07/19 Python
Python3.5局部变量与全局变量作用域实例分析
2019/04/30 Python
Python 音频生成器的实现示例
2019/12/24 Python
css3 transform及原生js实现鼠标拖动3D立方体旋转
2016/06/20 HTML / CSS
大学生毕业自我鉴定范文
2013/11/03 职场文书
教育专业自荐书范文
2013/12/17 职场文书
给朋友的道歉信
2014/01/09 职场文书
家长给小学生的评语
2014/01/30 职场文书
总账会计岗位职责
2014/03/13 职场文书
《故乡》教学反思
2014/04/10 职场文书
《梅花魂》教学反思
2014/04/30 职场文书
2014年秋季新学期寄语
2014/08/02 职场文书
拾金不昧感谢信范文
2015/01/21 职场文书
国家助学金感谢信
2015/01/21 职场文书
佛光寺导游词
2015/02/10 职场文书
2016年大学生暑假爱心支教活动策划书
2015/11/26 职场文书
C#连接ORACLE出现乱码问题的解决方法
2021/10/05 Oracle
Python TypeError: ‘float‘ object is not subscriptable错误解决
2022/12/24 Python