首页 > 其他分享 >PEP8规范

PEP8规范

时间:2022-09-23 18:55:20浏览次数:48  
标签:name Python PEP 规范 空格 PEP8 import

   pycharm中很多时候会有各种颜色提示还有波浪线
   只要不是红线一般都不影响代码运行

一.PEP8的规范是什么?

​ PEP是Python Enhancement Proposal的缩写,通常翻译为“Python增强提案”。

​ 每个PEP都是一份为Python社区提供的指导Python往更好的方向发展的技术文档,其中的第8号增强提案(PEP 8)是针对Python语言编订的代码风格指南。

​ 尽管我们可以在保证语法没有问题的前提下随意书写Python代码,但是在实际开发中,采用一致的风格书写出可读性强的代码是每个专业的程序员应该做到的事情,也是每个公司的编程规范中会提出的要求,这些在多人协作开发一个项目(团队开发)的时候显得尤为重要。

二.空格的使用

#1.使用空格来表示缩进而不要用制表符(Tab)。

#2、和语法相关的每一层缩进都用4个空格来表示。

#3、每行的字符数不要超过79个字符,如果表达式因太长而占据了多行,除了首行之外的其余各行都应该在正常的缩进宽度上再加上4个空格。

#4、函数和类的定义,代码前后都要用两个空行进行分隔。

#5、在同一个类中,各个方法之间应该用一个空行进行分隔。

#6、二元运算符的左右两侧应该保留一个空格,而且只要一个空格就好。

三.命名约定

变量名可以是字母、数字、下划线的组合,不能以数字开头,也不可以用关键字来命名哦!

关键字,就是有特殊意义的字符:

import keyword
print(keyword.kwlist)
['False', 'None', 'True', 'and', 'as', 'assert', 'break', \
 'class', 'continue', 'def', 'del', 'elif', 'else', 'except',\
 'finally', 'for', 'from', 'global', 'if', 'import', 'in', \
 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise',\
 'return', 'try', 'while', 'with', 'yield']

除此之外,还有一些其他的规范:

1)Python 里面区分大小写,类名一般使用首字母大写;

2)慎用字母I(i的大写)、l(L的小写)、o、O,因为可能被人错看成数字1和0;

3)命名应既简短又具有描述性。例如,student_name比s_n好,name_length比length_of_persons_name好;

4)在运算符前后各保留一个空格,例如 n == 1;

3、Python之禅
Python 中内置了一个彩蛋,简单明了地说明了 Python 的哲学,只要输入 import this,然后按下回车就能看到原文,这里贴出中文翻译版本:

Python之禅

by Tim Peters

优美胜于丑陋
明了胜于隐晦
简洁胜于复杂
复杂胜于混乱
扁平胜于嵌套
宽松胜于紧凑
可读性很重要
即便是特例,也不可违背这些规则
虽然现实往往不那么完美
但是不应该放过任何异常
除非你确定需要如此
如果存在多种可能,不要猜测
肯定有一种——通常也是唯一一种——最佳的解决方案
虽然这并不容易,因为你不是Python之父
动手比不动手要好
但不假思索就动手还不如不做
如果你的方案很难懂,那肯定不是一个好方案
如果你的方案很好懂,那肯定是一个好方案
命名空间非常有用,我们应当多加利用

标签:name,Python,PEP,规范,空格,PEP8,import
From: https://www.cnblogs.com/wei0919/p/16723908.html

相关文章

  • API接口、接口测试工具postman、restful规范、序列化与反序列化、djangorestframework
    API接口通过网络,规定了前台后台信息交流规则的url链接,也就是前后台信息交互的媒介API接口的样子url:长得像返回数据的url链接https://api.map.baidu.com/place/v2/s......
  • 接口文档编写规范(前后端分离项目接口api)
    接口文档编写规范API规范api主要包括四部分:uri、请求方式、请求参数、返回参数,一般就是对这四部分做统一规范接口url:是否是rest风格的,统一标识,比如登录的url:/login......
  • 我的中文写作规范
    关于本文转载自《中文技术文档的写作规范》,略有修改。标题谨慎地使用标题,最好不要超过四级。文本字间距中文与英文错误:本文介绍如何快速启动Windows系统。正确:......
  • JS 模块化 - 03 AMD 规范与 Require JS
    1AMD规范介绍AMD规范,全称AsynchronousModuleDefinition,异步模块定义,模块之间的依赖可以被异步加载。AMD规范由CommonJS规范演进而来,前文介绍CommonJS规范时......
  • 变量的命名规范 运算符
    变量的命名规范所有变量,方法,类名:都要做到见名知意类成员变量:首字母小写和驼峰原则:例如monthSalarylastName除了第一个单词后面单词首字母大写局部变量:首字母小写和驼......
  • UEC++编程规范
    UEC++中类的命名规范Axxx继承自AActorUxxx继承自UObjectFxxx原生C++Ixxx接口类Sxxx为slate 枚举的定义:1.加反射宏UENUM()2.自定义enumclassECustomColorType:......
  • 标识符/变量的命名规范
     能自己起名字的地方都叫标识符 注意事项:1.不能以数字开头,但是可以包含2.不能使用关键字和保留字开头,但是可以包含3.字母区分大小写例子:hello//√hello12......
  • 编程规范学习及《数学之美》第一章读后感
    Part1编程规范学习 重要性刚开始学编程时并不注意编程语句的格式,只在乎代码运行的效果。后来,在与同学的交流时看过别人的代码之后(有规范的,也有很乱的),逐渐明白到编程规......
  • HarmonyOS应用开发-声明式UI描述规范
    1.无构造参数配置组件的接口定义不包含必选构造参数,组件后面的“()”中不需要配置任何内容。示例:Column(){Text('item1')Divider()//Noparameterconfiguratio......
  • 《【建议】吧务同志们每个礼拜写一篇规范论文》 回复
    《【建议】吧务同志们每个礼拜写一篇规范论文》    https://tieba.baidu.com/p/8028647171    楼主让我看看  16楼  @闲聊时刻  的 论文, ......