python pep8模块_读懂PEP8,让你的Python代码更加优雅

PEP8

《8 号 Python 增强规范》(Python Enhacement Proposal #8),简称PEP8

通俗的来讲 PEP8 是针对 python 代码格式而编订的风格指南,令代码更加易读易懂。像谷歌这样的大公司是有自己内部的风格规范Google Style,目的就是为了提高开发效率。

据传闻,Google 马桶前面的门上,都贴着 Python 编码规范。小数先生今天就分享一些常用的PEP8编码规范。

缩进

a.每一级缩进使用4个空格。

b.续行应该与其包裹元素对其。

# 推荐

# 与左括号对齐

fo = dict(name='小数先生', age=18,

gender='男',city='hangzhou')

# 用更多的缩进来与其他行区分

def long_function_name(

var_noe, var_two,

var_three, var_four):

print(var_one)

不推荐

# 不推荐

fo = dict(name='小数先生', age=18,

gender='男',city='hangzhou')

def long_function_name(

var_noe, var_two,

var_three, var_four):

print(var_one)

行的最大长度

a.所有行限制的最大字符串数为79。

b.没有结构化限制的大块文本(文档字符或者注释),每行最大字符数限制在72。

空行

a.顶层函数和类的定义,前后用两个空行隔开。

b.类里的方法定义用一个空行隔开。

imports导入

a.导入通常在分开的行。

# 推荐

import os

import sys

# 不推荐

import sys, os

b.导入总是位于文件的顶部,在模块注释和文档字符串之后,在模块的全局变量与常量之前。

c.导入应该按照以下顺序分组标准库导入

相关第三方库导入

本地应用/库特定导入(应该在每一组导入之间加入空行)

d.推荐使用绝对路径导入,如果导入系统没有正确的配置,使用绝对路径会更加可读并且性能更好。

Comments注释

a.代码更改时,优先更新对应的注释。

b.注释应该是完整的句子。

c.如果注释很短,结尾的句号可以省略。

d.在句尾结束的时候应该使用两个空格

Block Comments 块注释

a.块注释通常适用于跟随它们的某些(或全部)代码,并缩进到与代码相同的级别。块注释的每一行开通使用一个 # 和一个空格(除非块注释内部缩进文本)

b.块注释内部的段落通过只有一个 # 的空行分隔

Inline Comments 行内注释

a.有节制地使用行内注释

b.行内注释是与代码语句同行的注释,行内注释和代码至少要有两个空格分隔。

Documentation Strings文档字符串

a.要为所有的公共模块,函数,类已经方法编写文档说明

b.多行文档说明使用的结尾三引号自成一行

# 推荐

"""Return a foobang

Optional plotz says to frobnicate the bizbaz first.

"""

命名规范

a.永远不要使用字母'l'(小写的L),'O'(大写的o),或者'I'(大写的i)作为单字符变量名

b.函数名要小写,如果想提高可读性可以用下划线分离

c.类名首字母要大写

更多内容PEP 8 -- Style Guide for Python Code​legacy.python.orgb.Python PEP8 编码规范中文版​blog.csdn.netstyleguide​google.github.io

作者:小数先生

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/533576.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python数值模拟教程_数值模拟必备random模块

该模块实现了各种分布的伪随机数生成器。可以在区间内抽取一个随机数,可以在列表中抽取一个元素,可以从分布中抽取样本 。random模块不能直接访问,需要导入 random 模块,然后通过 random 静态对象调用该方法。import random1 生成…

php版本哪个没有面向对象,php面向对象的方法重载两种版本比较

多个函数用同一个名字,但参数表,即参数的个数或(和)数据类型可以不同,调用的时候,虽然方法名字相同,但根据参数表可以自动调用对应的函数。PHP4 中仅仅实现了面向对象的部分的、简单的功能,而 PHP5 以后对对…

python实现录音小程序 界面_小程序如何实现录音 播放功能

第二步:编辑文件首先在src下创建一个test包并在test包下新建一个类MyRecord具体步骤代码如下所示:package test;import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.io.*;import javax.sound.sampled.*;public class MyRecord…

织梦php网站修改教程,织梦DEDEcms织梦软件模型增加图集功能教程(含修改文件下载)...

这篇文章主要为大家详细介绍了织梦DEDEcms织梦软件模型增加图集功能教程(含修改文件下载),具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴。织梦DEDEcms织梦软件模型增加图集功能,这是今天361模板要给大家分享的。下…

python自动截图发送邮件_PhantomJS按尺寸截取页面,并用python发送邮件

前言:当前有个任务是要把几个网站的日志返回状态码进行汇总,用饼图展示,并每天发送邮件。一、分析问题画出饼图,这个我用kibana给画出来了,下面不做讲解;截取饼图,因为kibana是用js展示出来的&a…

nikita popov php,PHP中对performance的考虑点

Nikita Popov 在他的演讲中谈了几个PHP 程序中和performance相关的point。1.PHP使用shared memory, preload的方式事先分配,而只有在所有的处理结束之后,share memory 才会断开和所有进程或者thread之间的联系。光是opcode,FPM的设定还不足以…

python建模仿真 matlab_清华大学出版社-图书详情-《仿真建模与MATLAB实用教程》

MATLAB语言是目前世界上最为流行的科学计算语言之一,它的特点是能够快速地完成诸如矩阵运算、微分、寻优等计算任务。由于它配备了很多应用领域的专业工具箱,诸如金融、信号处理、图像处理、神经网络、嵌入式系统、仿真建模等,而且每个工具箱都包含了该应…

java web使用jquery,JAVA_Web_JQuery

简介:jquery 全称 javaScript Query.是js的一个框架。本质上仍然是js。特点:支持各种主流的浏览器、使用特别简单、拥有便捷的插件扩展机制和丰富的插件。一、JQuery内部封装原理介绍:匿名闭包。下面这两行代码是jquery包下的已经封装的代码&…

python语法学习_Python学习1——语法

Python语法包括了行、缩进、注释、标识符、保留关键字等方面。打印语句:>>> print(hello,world!)hello,world!输入语句:>>> input(请输入你的名字:)请输入你的名字:哈哈#”哈哈”是你自己输入的名字哈哈 #打印出…

java 两个页面传递数据,请问Cookie怎么在两个页面间传递数据?

参考代码如下://如果请求的Cookie对象为空if (Request.Cookies["userCookie"] null){//创建一个Cookie对象HttpCookie userCookie new HttpCookie("userCookie");//给对象赋值userCookie.Values["userName"] userInfo.UserName.ToS…

优化matlab作业,现代设计优化算法MATLAB实现

开篇语前阵子做现代设计方法的时候,发现网上很是缺乏这种作业形式的简易算法实现,所以特地来简书写一篇。有两份,一份是我的(说来惭愧,我的大部分都是在网上找的代码,然后在自己的电脑上跑一次,跑出来了就行…

怎样用python画玫瑰花的简笔画_玫瑰花简笔画素描作品图片

玫瑰原产是中国。在古时的汉语,“玫瑰”一词原意是指红色美玉。玫瑰花这么漂亮,素描怎么画得好看呢?你知道玫瑰花的简笔画素描是怎样的吗?今天先和学习啦小编一起欣赏这些玫瑰花简笔画素描图片,希望你会有所收获的。玫瑰花简笔画素描图片欣…

多因子选选股MATLAB代码,金工研报:利用卷积神经网络进行多因子选股

首先,我们先来看一下通过卷积神经网络选股模型的整体流程,然后再根据每一步流程进行介绍,具体如下图所示:1、数据获取用于历史回测数据来自所有A股股票,其中剔除了ST股以及上市3个月的股票,另外&#xff0c…

python list tuple 打包 解包_python的打包与解包

python的*与**,在函数的定义与调用过程中,有着不同的作用打包参数:一、函数定义时,形参前加*号(如:*args):收集实参中所有的位置参数,打包成新元组并将该元组赋值给args变量实参位置参数&#x…

python 成员函数 泛型函数_【一点资讯】白学这么多年 Python?连泛型函数都不会写? www.yidianzixun.com...

泛型,如果你尝过java,应该对他不陌生吧。但你可能不知道在 Python 中(3.4 ),也可以实现 简单的泛型函数。在Python中只能实现基于单个(第一个)参数的数据类型来选择具体的实现方式,官方名称 是single-dispatch。你或许听不懂&…

matlab bad apple,【bad apple】matlab制作矩阵苹果~

有屏幕的地方就有bad apple那么作为一名工科生,熟练的操♂作马桶萝卜(matlab)是一项基本技能下面开始讲解如何用matlab制作别具一格的“矩阵苹果”~实验环境matlab R2018a原版bad apple视频技术要求可以即时演算图形可以将处理后的每帧图形合并成新的视频先上代码%t…

服务器ip直接访问php怎么写,php - 如何实现用公网ip访问到服务器上的网页?

服务器系统是Windows Server 2012 R2,已经部署了IIS、PHP和MySQL,能够在云服务器上通过localhost打开php网页,(放在服务器wwwroot上的index.php)已在ISS管理器中添加网站,但编辑网站绑定时,在ip地址中填入了服务器的公…

vb6 打印选项对话框_图纸打印次数太多,不知道哪次才是最新的?用打印戳记区分效果好...

原创:就说我在开发区使用AutoCAD从事设计工作的朋友们不知道有没遇到过这种情况:图纸在反复修改打印的过程中,由于图纸内容高度相似,往往搞不清究竟哪个才是最新版本的图纸了。这种情况下,细致入微地去核对非常麻烦&am…

安卓文本编辑器php cpp,用安卓原生控件封装一个简易的富文本编辑器

最近接到项目需求:移动端原生写一个富文本编辑器。 ( ⊙ o ⊙ )从没遇到过富文本要用原生写的,然后就查阅各种资料。然后结合自己的思路:其实安卓的富文本编辑器就是一个 “容器”。那么接下来我就带给大家说一说我自定义这个富文本编…

python和nltk自然语言处理书评_Python和NLTK自然语言处理

模块1 NLTK基础知识第 1章 自然语言处理简介 31.1 为什么要学习NLP 41.2 从Python的基本知识开始 71.2.1 列表 71.2.2 自助 81.2.3 正则表达式 91.2.4 词典 111.2.5 编写函数 111.3 NLTK 131.4 试一试 181.5 本章小结 18第 2章 文本的整理和清洗 192.…