Python基础知识

【笔记】Python基础

作者 Trekerz 日期 2017-02-27
Python基础知识

一、 Python综述

1. Python2.x相比于3.x版本的优点:优化成熟、兼容库多。

2. Python的安装以及Eclipse中的PyDev插件。

3. Python实现斐波那契数列的演示。

二、 数据类型

Python的数据类型是在变量赋值的时候自动确定的。

1. Number类型

用于存储数字。包括Integer、Long Integer、Boolean、Double-precision float、Complex number。

Integer:在不同位的机器上取值范围不同。

Long Integer:以1或L结尾,没有限制数值大小。

Complex number:复数。

(1) 操作符:算术操作符、比特操作符。

(2) 内置函数:用于操作数值进行运算或转化的函数。

2. Sequence类型簇

序列类型簇包括字符串(String)、元组(Tuple)、列表(List)。

String:由字符组成的序列类型。

Tuple:由任意对象组成的不可修改的序列类型。

List:由任意对象组成的可修改的序列类型。

(1) 操作符

​ 可用于元素提取、序列链接等操作。

(2) 内置函数

​ 可用于求长度、类型转换、排序等操作。

3. String类型(序列类型的操作都适用)

由0个或多个字符组成的有限序列。通常以整体作为操作对象。

(1) 分类:普通字符串、Unicode字符串(字符串前面加u)。

(2) 字符串格式化:按指定规则吧字符转化为新的格式,同时可以选择新的展示形式。

(3) 内置函数:用于String类型的各种操作。

4. Tuple类型

用圆括号表示,不同元素之间以逗号隔开。其大小和其中的元素在初始化后不能修改。唯一的用处就是被读取

(1) 特点:操作Tuple的速度比操作List要快。

5. List类型

用中括号表示,不同元素之间以逗号隔开。其大小和其中的元素在初始化后可以再次被修改。可用于增、删、改等操作。

(1) 基本操作:序列类型的操作在此都通用。

(2) 内置函数:用于各种操作List中的元素。

6. Set类型

即集合。表示相互之间无序的一组对象。包括普通集合set和不可变集合frozenset。有交集、并集、补集等运算。

(1) 内置函数:用于集合中元素的操作。

7. Dictionary类型

即字典。代表一个键值存储库。是Python中唯一表示映射关系的类。可以由键搜索到对应的值。

(1) 内置函数:用于字典中键值对的操作。

三、 流程控制

用于实现对程序流程的选择、循环、和返回等控制。主要有if、for、break、continue等。

1. 程序块与作用域

程序块:用冒号“:”来标记,同一个冒号下的语句要有相同的缩进。

作用域:按变量或函数的可见性定义的程序子集。同一个程序块就是同一个作用域。

2. 判断语句

三种语法形式的if。

3. 循环语句

​ (1) while

​ (2) for

​ (3) break和continue

4. 语句嵌套

Python允许用if、while、for等语句的嵌套。

四、 函数

1. 定义与使用

(1) 关键字:def。

(2) 返回值:可以0个或多个。

2. 变长参数

函数参数的个数、类型不定。Python支持Tuple变长参数和Dictionary变长参数。

(1) Tuple变长参数:未知参数的数量不固定,但在函数使用这些参数时无需知道这些参数的名字。用*标记。

(2) Dictionary变长参数:未知参数的数量不固定,在函数使用这些参数时需要知道这些参数的名字。用**标记。

3. 匿名函数

无需定义标识符(函数名)的函数或子程序,用于只引用一次函数的场合。Python中一般用lambda语法定义匿名函数。

五、 异常

异常处理功能分离了接收和处理错误代码两个步骤。

1. 处理异常

try、expect、else(可选)、finally(可选)。

2. 自定义异常

除了系统自定义的异常外,自己还可以定义异常的类型。自定义异常可以是自己定义的一个类。

六、 面向对象编程

类、对象、继承、封装性、多态性。

1. 类和对象

关键字:class

(1) 构造函数:用于初始化类的对象。不能有返回值。

(2) 析构函数:销毁对象时调用。清理和善后。

(3) 实例成员变量:用于表示实例(对象)中的变量,用self。

(4) 静态函数和类函数:可以不通过构建对象而是直接访问类。静态函数使用装饰器@staticmethod来定义,类函数使用@classmethod来定义。它们都定义在类里面,调用的时候直接“类.函数”即可。

(5) 私有成员:封装性的体现。类里面不想让外部看到的变量定义为私有成员,用双下划线开始来命名。

2. 继承

定义类时可以在小括号中指定基类。

​ (1) 在子类成员函数中用super关键字可以访问父类成员。

​ (2) 在子类析构函数中调用基类的析构函数是一种最佳实践,不这样做可能导致父类资源不能如期释放。

​ (3) Python允许一个子类可以有多个基类。