【Python基础】拯救你奇丑无比的Python代码的神器
点击上方“小白学视觉”,选择加"星标"或“置顶”
重磅干货,第一时间送达
Python编程语言需要遵循PEP8规范,但是初学者往往记不住这个规范,代码写得比较丑。本文推荐几个神器来拯救奇丑无边的python代码。
Jupyter notebook的代码要想写得规范,推荐用Code prettify插件。
安装插件
首先插件Nbextensions
执行以下命令
pip install jupyter_contrib_nbextensions
无报错再执行:
jupyter contrib nbextension install --user
选取Code prettify模块
备注:需要安装 yapf模块
pip install yapf
使用如下:
原始不规范代码:使用工具栏最右侧的按钮:使用后代码立刻变规范了:
2.1 PyCharm集成pylint
pylint是代码检查工具,不能自动修改代码
Pylint 安装
pip install pylint
PyCharm 设置
文件(file)-设置(settings)-外部工具(external-tools)-添加,其中:
program:
是python安装路径下的Scripts路径,我的是(建议搜索pylint.exe找到路径)
C:\ProgramData\Anaconda3\Scripts\pylint.exe
Arguments:
--reports=n --disable=C0103 $FilePath$
(最后必须以$FilePath$结尾)
working directory:
$FileDir$
(必须是这个)
output filters:
$FILE_PATH$:$LINE$:
具体配置如图:
配置完毕,选择一个Python程序,右键点击,快捷菜单中会有“Extensions Tools -> Pylint”,点击运行即可。输出结果在执行程序结果的窗口(IDE下半部分)。如果看到返回值为0,说明程序没问题了。
2.2 autopep8
autopep8是一款将python代码自动排版为PEP8风格的工具
autopep8安装
pip install autopep8
autopep8配置
文件(file)-设置(settings)-外部工具(external-tools)-添加,其中:
Name:
autopep8
(起名而已,随便起)
Program: autopep8
Arguments:
--in-place --aggressive --aggressive $FilePath$
Working directory:
$ProjectFileDir$
Output filters:
$FILE_PATH$\:$LINE$\:$COLUMN$\:.*
具体配置如图:
将鼠标放在该文件的编辑器中→右键→External Tools→点击Autopep8。这样你的代码就符合pep8的风格了。
使用效果如下:
原始不规范代码:使用工具后:
在平时工作中,好多程序员都在为变量的命名纠结不已,随便命名怕以后看不懂,想好好命名可是自己的英文水平又不好,在这个命名上可能需要花费大量的时间,会耽误到开发的效率,今天推荐一个神器,这个神器可以摆脱变量命名纠结!
工具网址
https://unbug.github.io/codelf/
GitHub 链接:https://github.com/unbug/codelf
输入要起名的变量。点击搜索后,网站会给出变量名的翻译,下方给出变量的起名建议,大家可以copy下变量名,也可以看下用了这个变量的源代码,而且可以选择开发语言种类。
点击「Search」就是基于当前命名搜索其它相关的命名。
点击「Repo」就是链接到使用该命名的代码所在的资源库。
点击「Copy」是复制该命名。
点击「Codes」可以查看使用命名的示例代码。
本文推荐几个神器来拯救奇丑无比的python代码。以上推荐的工具有助于你写出漂亮的代码,记得收藏转发哦!
下载1:OpenCV-Contrib扩展模块中文版教程 在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。 下载2:Python视觉实战项目52讲 在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。 下载3:OpenCV实战项目20讲 在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。 交流群
欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~