声明
- 笔记中所用操作系统:Ubuntu(Linux)
- 文章是本人学习笔记,供自己复习用,知识点并不全面,不适合初学者做为学习资料使用。
- 新手学习,难免有疏漏或错误,感谢指正。
- 本文参考书籍:明日科技《零基础学Python》 吉林大学出版社,2018
概述
Python,本意为蟒蛇,1989年由荷兰的Guido van Rossum设计。Python是一种面向对象的解释型高级编程语言,拥有丰富的标准库,能够把使用其他语言制作的各种模块(尤其是C和C++)联结起来,因此又被成为“胶水”语言。
Python语法简洁,代码可读性强,符合人类的思维方式和语言习惯(英文),对初学者友好。
版本
目前常用版本是Python 2.x和Python 3.x。官方宣布于2020 年 1 月 1 日, 停止 Python 2 的更新,Python 2.7 被确定为最后一个 Python 2.x 版本。因此建议直接学习Python 3.x。
Python 2.x的多数代码不能直接在Python 3.x的环境下运行,所以官方提供了转换工具2to3.py,安装Python 3.x会自带。
使用时,在要转换的文件的根目录下打开终端,运行代码
2to3 -w 文件名.py
应用
Python在web开发、大数据处理、人工智能、自动化运维开发、云计算、爬虫、游戏开发等方面都有广泛的应用。
开发工具
除了Python自带的IDLE,还有很多可以进行Python编程 的开发工具。常用的有Pycharm、Microsoft Visual Studio、Eclipse+PyDev(安装PyDev插件后,Elipse就可以进行Python应用开发)等。
安装
一般linux系统都自带Python,我使用的Ubuntu 自带 Python 2.7和 Python 3.7,就没有自己安装。
需要自行安装的可以看这篇文章,还带讲解,比较详细。
语法特点
代码缩进
Python不使用 { } 分隔代码块,而是采用代码缩进和冒号
缩进可以使用空格或键实现。通常用四个空格或者一个Tab键作为一个缩进量
同一级别的代码块缩进量必须相同,不能有的用三个空格有的用四个空格,如果采用了不合理的代码缩进,将抛出SyntaxError异常。
编码规范
Python 中采用 PEP 8 作为编码规范,其中 PEP 是 Python Enhancement Proposal(Python增强建议书),8 表示版本号。
- 每个 impot 语句只导入一个模块,尽量避免导入多个模块。
- 不要在行尾添加分号,也不要用分号将两条命令放在同一行
- 建议每行不超过 80 个字符,如果超过,建议用小括号 () 将多行内容隐式的连接起来,而不推荐用反斜杠 “\” 进行连接。但以下两种情况除外:
1、导入模块的语句过长
2、注释里的 URL - 使用必要的空行可以增加代码的可读性。一般在顶级定义(如函数或类的定义)之间空两行,方法定义之间空一行。另外,在分隔某些功能的位置也可以空一行。
- 运算符两侧、函数参数之间、逗号两侧,建议用空格分隔
- 避免在循环中使用 “+” 和 “+=” 运算符累加字符串。因为字符串是不可变的,这样会创建不必要的临时对象。推荐将每个字符串加入列表,然后在循环结束后使用 join() 方法连接列表。
- 适当使用异常处理结构提高程序的容错性,但不能过多的以来异常处理结构,适当的显示判断还是必要的。
命名规范
- 模块名尽量短小,且全部使用小写字母,可以使用下划线分隔单词。
- 包名尽量短小,且全部使用小写字母,不推荐使用下划线
- 类名采用单词首字母大写的形式(Pascal风格),例如定义一个借书类,课命名为BorrowBook
- 模块内部的类采用下划线 “_” + Pascal 风格的类名组成。例如在BorrowBook类中的内部类,课命名为_BorrowBook
- 函数、类的属性和方法命名,全部使用小写字母,多个单词间用 “_” 分隔
- 常量命名全部用大写字母,可以使用下划线
- 使用单下划线 “_” 的模块变量或者函数是受保护的,在使用 from XXX import * 语句从模块中导入这些变量或者函数时不能被导入
- 使用双下划线 “__”开头的实例变量或方法是类私有的