PEP8 python规范神器
如需转载,请注明出处:小婷儿的博客:https://www.cnblogs.com/xxtalhr/p/10645992.html
一、Jupyter notebook 篇
Jupyter notebook的代码要想写得规范,推荐用Code prettify插件。
1、安装插件Nbextensions
1 pip install jupyter_contrib_nbextensions
2、无报错再执行:
1 jupyter contrib nbextension install --user
3、安装模块
1 pip install yapf
4、选取Code prettify模块
5、使用:点击工具栏最右侧的按钮使用如下
- 使用前
1 def batch_gradient_decent(theta,X,y,epoch,alpha=0.01): 2 cost_data=[lr_cost(theta,X,y)] 3 _theta=theta.copy() 4 for _ in range(epoch): 5 _theta=_theta - alpha * gradient(_theta,X,y) 6 cost_data.append(lr_cost(_theta,X,y)) 7 return _theta,cost_data
- 点击按钮使用后
-
1 def batch_gradient_decent(theta, X, y, epoch, alpha=0.01): 2 cost_data = [lr_cost(theta, X, y)] 3 _theta = theta.copy() 4 for _ in range(epoch): 5 _theta = _theta - alpha * gradient(_theta, X, y) 6 cost_data.append(lr_cost(_theta, X, y)) 7 return _theta, cost_data
二、Pycharm篇
2.1 PyCharm集成pylint
pylint是代码检查工具,不能自动修改代码,Pylint 安装
1 pip install pylint
2.2 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下半部分)。对于每一个 Python 模块,Pylint 的结果中首先显示一些"*"字符 , 后面紧跟模块的名字,然后是一系列的 message, message 的格式如下: __MESSAGE_TYPE: LINE_NUM:[OBJECT:] MESSAGE__ MESSAGE_TYPE 有如下几种:
- (C) 惯例。违反了编码风格标准
- (R) 重构。写得非常糟糕的代码。
- (W) 警告。某些 Python 特定的问题。
- (E) 错误。很可能是代码中的错误。
- (F) 致命错误。阻止 Pylint 进一步运行的错误。
2.3 autopep8
autopep8是一款将python代码自动排版为PEP8风格的工具,autopep8安装
1 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的风格了。
三、安装和使用效果
例一
'''执行autopep8前的格式 sum = 1+10*2 print('sum:',sum) ''' # 执行autopep8后格式 sum = 1 + 10 * 2 print('sum:', sum)
例二
1 import numpy as np 2 3 #执行 autopep8 后 4 5 n = np.array(([1, 2, 3], [4, 5, 6], [7, 8, 9]))
#执行 autopep8 前 n = np.array(([1,2,3],[4,5,6],[7,8,9]))
文章内容来源于小婷儿的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解 有趣的事,Python永远不会缺席!
如需转发,请注明出处:小婷儿的博客python https://www.cnblogs.com/xxtalhr/
博客园:https://www.cnblogs.com/xxtalhr/
CSDN:https://blog.csdn.net/u010986753
有问题请在博客下留言或加作者:
微信:tinghai87605025
QQ :87605025
python QQ交流群:py_data 483766429
培训说明:
OCP培训说明连接:https://mp.weixin.qq.com/s/2cymJ4xiBPtTaHu16HkiuA
OCM培训说明连接:https://mp.weixin.qq.com/s/7-R6Cz8RcJKduVv6YlAxJA
小婷儿的python正在成长中,其中还有很多不足之处,随着学习和工作的深入,会对以往的博客内容逐步改进和完善哒。重要的事多说几遍。。。。。。