文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python入门课程第三讲之编码规范知多少

2024-04-02 19:55

关注

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

前言

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

在这里插入图片描述

注释

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

单行注释
Python使用 # 号作为单行注释的符号,其语法格式为:#注释内容 从#号开始直到这行结束为止的所有内容都是注释。例如:


# 这是单行注释

多行注释
多行注释指一次注释程序中多行的内容(包含一行) ,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代码的样式指南。这里介绍几个初学者需要掌握的编码规范

每个import 语句只导入一个模块,尽量避免一次导入多个模块


#推荐
import sys
import os
#不推荐
import sys,os

不要在行尾添加分号,也不要用分号将两条命令放在同一行,不推荐下面的写法


print('你好');print('我好');

建议每行不超过80个字符,如果超过,建议使用小括号将多行内容隐式的连接起来,而不推荐使用反斜杠\进行连接。


#推荐
s=('没有耕耘就没有收获,'
   '好好学习天天向上')
#不推荐
s='没有耕耘就没有收获,' \
  '好好学习天天向上'

其他的可参考官网 PEP8官网

标识符命令规范

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

标识符遵循的规则

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

1.标识符是由字符(AZ和az)、下划线和数字组成,但第一个字符不能是数字


#合法示范
userId
user_id
user2

非法的标识符


2user

2.标识符不能和Python中的保留字相同,有关保留字,后续章节会介绍

3.Python中的标识符中,不能包含空格、@、%以及$等特殊字符串。比如这样@user

4.在Python中,标识符中的字母是严格区分大小写的,也就是说。两个同样的单词,如果大小写格式不一样,那么代表的意义也是完全不同的,比如,下面这3个变量之间,就是完全独立的,毫无关系


number=2
Number=2
NUMBER=3

5.Python中,以下划线开头的标识符有特殊含义,例如:

  1. 以单下划线开头的标识符(如_height),表示不能直接访问的类属性,其无法通过 from … import * 的方式导入
  2. 以双下划线开头的标识符(如__add)表示类的私有成员
  3. 以双下划线作为开头和结尾的标识符(如__init__)是专用标识符不同场景中的标识符,其名称也有一定的规范可循
  4. 当标识符用作模块名时,应尽量短小,并且全部使用小写字母,可以使用下划线分割多个字母,例如 user_login
  5. 当标识符用作包的名称时,应尽量短小,也全部使用小写字母,不推荐使用下划线,例如: com.jay,com.jay.er等
  6. 当标识符用作类名时,应采用单词首字母大写的形式,例如,定义一个学生类,可以命名为Student
  7. 模块内部的类名,可以采用“下划线+首字母大写”的形式,如_Student
  8. 函数名、类中的属性名和方法名,应全部使用小写字母,多个单词之间可以用下划线分割
  9. 常量命令全部使用大写字母,单词之间可以用下划线分割。

关键字

说完了标识符的命名规范,本文也接近尾声了,最后要介绍的是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的注释,编码规范,标识符命名等等,希望对读者朋友们有所帮助。

到此这篇关于python入门课程第二讲之编码规范知多少的文章就介绍到这了,更多相关Python编码规范内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯