一、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 _ inrange(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 _ inrange(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 importnumpy as np2

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 import 类如何捕获clrt c_PEP8 python规范神器相关推荐

  1. python import 类如何捕获clrt c_Python3 与 C# 扩展之~基础衍生

    本文适应人群:C# or Python3 基础巩固 马上快期末考试了,老师蜜月也回来了,于是有了一场跨季度的复习讲课了: 1.Python基础语法扩展¶ 1.1.if 判断条件相关¶ None.&qu ...

  2. python定义类_提升你的Python编程能力,细说类的继承,拿走不谢

    今天咱们聊点啥呢?要不还是聊点Python基础的东东吧,大家已经都知道啦,Python呢是一种面向对象的脚本编程语言,那面向对象的编程语言呢,都会支持面向对象的三大特性,你知道是哪三大特性吗?当然是咱 ...

  3. Python import导入模块与函数方法 Python语言基础【1】

    1 Python的语言基础 导入模块 在Python代码中导入模块需要使用 import语句语法结果如下 import module_name 使用模块中函数的语法如下 module_name.fun ...

  4. 使用Python元类(metaclass)创建Python类

    Python类的定义再简单不过了.不过你有想过动态定义一个Python类吗?What?动态定义,是动态解析Python代码吗?不,这仍然是静态定义.我是说,干预类的创建过程,在类的创建过程中,对类中的 ...

  5. python import 类 继承_python学习之类的继承

    面向对象中一个重要的特性就是继承,继承的好处就是提高代码的重用率,减少不必要的代码.继承是父类与子类的关系,当子类继承了父类后,就具有了父类的所有变量和方法.在python中定义继承的语法是:clas ...

  6. python import from class_彻底搞懂Python 中的 import 与 from import

    对不少 Python 初学者来说,Python 导入其他模块的方式让他们很难理解.什么时候用import xxx?什么时候用from xxx import yyy?什么时候用from xxx.yyy ...

  7. python传递类的实例_使用Python将变量从一个类实例传递到另一个类实例?

    我在将一个类实例中定义的变量传递到另一个类实例时遇到问题.我对使用类比较陌生,但据我所知,变量可以通过简单地定义为类实例的一部分(例如在下面的示例中)从一个实例传递到另一个实例.虽然我以前使用过这个模 ...

  8. python导入类有红线_解决Python中导入自己写的类,被划红线,但不影响执行的问题...

    1. 错误描述 之前在学习Python的过程中,导入自己写的包文件时,与之相关的方法等都会被划红线,但并不影响代码执行,如图: 看着红线确实有点强迫症,并且在这个过程当时,当使用该文件里的方法时不会自 ...

  9. python自己创建模块引用失败_详解Python import方法引入模块的实例 Python怎么import自己写的模块...

    python中 import导入模块失败的问题? python中的import引用不了模块我傻,为你傻;我痛,为你痛;深夜里,你是我一种惯性的回忆. 为什么我用from lianxi import*就 ...

最新文章

  1. react 渲染道具_关于React道具的另一篇文章
  2. 人工智能 机器学习系列 2:代价函数
  3. 本地搭建Hadoop伪分布式环境之四:开启搭建Hadoop2.4.0之旅
  4. mysql 田_Mysql知识总结
  5. 心灵战争服务器维护,心灵战争服务器异常产生哪些问题如何解决_心灵战争服务器异常产生问题及解决方法_玩游戏网...
  6. c#10:string内插处理
  7. java 线程 单例_多线程单例模式
  8. latex在overleaf可以成功编译运行,没有错误,但是上传到springer期刊的时候总是出现错误?
  9. Django讲课笔记01:Django简介
  10. Redis概念与架构
  11. 【android studio】解决android studio drawable新建项目时只有一个drawable目录的问题
  12. 【eclipse】启动不了报错java was started but returned exit code=13
  13. [MAC]用beamoff给VMware的Mac OS X 10.10.x加速
  14. CV520国产兼容应用及说明
  15. 前端克隆数据 --JS 深浅拷贝
  16. 优化jsj脚本,防止浏览器卡死
  17. 我的美丽天使(My Fair Angel)入门经典教程(下载 安装 汉化 使用)
  18. 计算机毕设-学籍管理系统
  19. 星际穿越+降临+明日边缘?星际拓荒重新定义星际探索题材游戏
  20. 地图位置签到打卡线上线下结合活动的小程序 document.getElementById(‘demo‘)

热门文章

  1. 微信如何用软件测试是否被拉黑,怎么知道微信里对方把自己拉黑或删除了?微信被好友拉黑检测方法...
  2. 未知usb设备(设备描述请求失败)_HomePod mini?电源线同样不可拆卸:但或能用USB-C移动电源供电...
  3. 计算机浮点数格式化表示方法,浮点数在计算机中是如何表示的
  4. 核磁共振三维重建(视频)
  5. 米塔之家.方声 | 专访元宇宙社交平台“比邻星球”联合创始人兼CEO董含灵
  6. 内存卡android文件夹名称,安卓手机内存卡文件夹英文名称解析——第三方应用类...
  7. 在计算机领域做研究的一些想法(转)
  8. Hyper-V 配置静态 IP
  9. cmd中通过winsat命令测试硬盘、CPU、内存、3d性能等
  10. 将门CTO沈强:人工智能时代,技术创新将全面引爆商业变革