(三)Python的编码规范,标识符知多少?

【Python从入门到精通】(三)Python的编码规范,标识符知多少?

您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦
这是Pyhon系列文章的第三篇,本文主要介绍Python程序的编码规范。
干货满满,建议收藏,需要用到时常看看。 小伙伴们如有问题及需要,欢迎踊跃留言哦~ ~ ~。

前言

上一篇文章我们介绍如何运行Python程序,如何安装PyCharm开发工具以及如何用PyCharm来运行Python程序,这些都只是开发前的准备工作而已,也就是说仅仅是弄好了脚手架。接下来就是开始编码了。不过在编码之前我们还是先需要了解一下Python的编码规范。为什么要了解编码规范呢?不看行不行呀! 如果我们想在别人看我们代码的时候大骂一声,卧槽,这代码跟shi一样,鬼看的懂呀。那就不看吧,写自己的代码让别人说去,哈哈哈哈。
在这里插入图片描述

注释

首先介绍的是Python的注释,Python的注释分为两种:单行注释和多行注释。

  1. 单行注释
    Python使用 # 号作为单行注释的符号,其语法格式为:#注释内容 从#号开始直到这行结束为止的所有内容都是注释。例如:
# 这是单行注释
  1. 多行注释
    多行注释指一次注释程序中多行的内容(包含一行) ,Python使用三个连续的 单引号””” 或者三个连续的双引号””” 注释多行内容。其语法格式是如下:
"""
三个连续的单引号的多行注释
注释多行内容
"""

或者

"""
三个连续的双引号的多行注释
注释多行内容
"""

多行注释通常用来为Python文件、模块、类或者函数等添加版权或者功能描述信息(即文档注释)

缩进规则

不同于其他编程语言(如Java,或者C)采用大括号{}分割代码块,Python采用代码缩进冒号 : 来区分代码块之间的层次。如下面的代码所示:

a = -100                     
if a >= 0:
    print("输出正数" + str(a))
    print("测试")
else:
    print("输出负数" + str(a))

其中第一行代码a = -100 和第二行代码if a >= 0:是在同一作用域(也就是作用范围相同),所以这两行代码并排。而第三行代码print("输出正数" + str(a)) 的作用范围是在第二行代码里面,所以需要缩进。第五行代码也是同理。第二行代码通过冒号和第三行代码的缩进来区分这两个代码块。
Python的缩进量可以使用空格或者Tab键来实现缩进,通常情况下都是采用4个空格长度作为一个缩进量的
这里需要注意的是同一个作用域的代码的缩进量要相同,不然会导致IndentationError异常错误,提示缩进量不对,如下面代码所示:第二行代码print("输出正数" + str(a)) 缩进了4个空格,而第三行代码print("测试")只缩进了2个空格。

if a >= 0:
    print("输出正数" + str(a))
  print("测试")

在Python中,对于类定义,函数定义,流程控制语句就像前面的if a>=0:,异常处理语句等,行尾的冒号和下一行缩进,表示下一个代码块的开始,而缩进的结束则表示此代码的结束。

编码规范

说完了代码的缩进规则之后,接下来看看Python的编码规范,Python采用PEP 8作为编码规范,其中PEP是Python Enhancement Proposal(Python增强建议书) 的缩写,8代表的是Python代码的样式指南。这里介绍几个初学者需要掌握的编码规范

  1. 每个import 语句只导入一个模块,尽量避免一次导入多个模块
#推荐
import sys
import os
#不推荐
import sys,os
  1. 不要在行尾添加分号,也不要用分号将两条命令放在同一行,不推荐下面的写法
print("你好");print("我好");
  1. 建议每行不超过80个字符,如果超过,建议使用小括号将多行内容隐式的连接起来,而不推荐使用反斜杠进行连接。
#推荐
s=("没有耕耘就没有收获,"
   "好好学习天天向上")
#不推荐
s="没有耕耘就没有收获," 
  "好好学习天天向上"

其他的可参考官网 PEP8官网

标识符命令规范

标识符就是一个名字,就好像是我们每个人都一个属于自己的名字一样的。它的主要作用就是作为变量,函数,类,模块以及其他对象的名称。

标识符遵循的规则

标识符不是随便胡乱命令的,也是要遵循一定的规则的。应该要遵循下列规则

  1. 标识符是由字符(AZ和az)、下划线和数字组成,但第一个字符不能是数字
#合法示范
userId
user_id
user2

非法的标识符

2user
  1. 标识符不能和Python中的保留字相同,有关保留字,后续章节会介绍
  2. Python中的标识符中,不能包含空格、@、%以及$等特殊字符串。比如这样@user
  3. 在Python中,标识符中的字母是严格区分大小写的,也就是说。两个同样的单词,如果大小写格式不一样,那么代表的意义也是完全不同的,比如,下面这3个变量之间,就是完全独立的,毫无关系
number=2
Number=2
NUMBER=3
  1. Python中,以下划线开头的标识符有特殊含义,例如:
    • 以单下划线开头的标识符(如_height),表示不能直接访问的类属性,其无法通过 from … import * 的方式导入
    • 以双下划线开头的标识符(如__add)表示类的私有成员
    • 以双下划线作为开头和结尾的标识符(如__init__)是专用标识符
      6.不同场景中的标识符,其名称也有一定的规范可循
    • 当标识符用作模块名时,应尽量短小,并且全部使用小写字母,可以使用下划线分割多个字母,例如 user_login
    • 当标识符用作包的名称时,应尽量短小,也全部使用小写字母,不推荐使用下划线,例如: com.jay,com.jay.er等
    • 当标识符用作类名时,应采用单词首字母大写的形式,例如,定义一个学生类,可以命名为Student
    • 模块内部的类名,可以采用“下划线+首字母大写”的形式,如_Student
    • 函数名、类中的属性名和方法名,应全部使用小写字母,多个单词之间可以用下划线分割
    • 常量命令全部使用大写字母,单词之间可以用下划线分割。

关键字

说完了标识符的命名规范,本文也接近尾声了,最后要介绍的是Python中的关键字,前面说了标识符的命令不用使用关键字,那么Python中有哪些关键词呢?可以通过如下语句进行查看

>>> import keyword
>>> 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"]

所有的关键词如下表所示:
表一 Python关键词一览表

and as assert break class continue
def del elif else except finally
for from False global if import
in is lambda nonlocal not None
os pass raise return try True
while with yield

总结

本文主要介绍了Python的编码规范,包括Python的注释,编码规范,标识符命名等等,希望对读者朋友们有所帮助。

我是码农飞哥,再次感谢您读完本文
全网同名【码农飞哥】。不积跬步,无以至千里,享受分享的快乐
我是码农飞哥,再次感谢您读完本文

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » (三)Python的编码规范,标识符知多少?