Contents

Python教程-Python速览

本系列为作者在官网学习python时做的笔记,详见python官网

python标准库官方文档,查阅标准库相关的内容

python语言参考,查看python语法,该文档是简洁的,但试图做到准确和完整。非必要的内建对象类型和内建函数、模块的语义描述在 Python 标准库 中。

标准库和语言参考涵盖了python的所有内容,他们是互补的,如果在语言参考中没有找到需要的内容那么就一定在便准库文档中。

Python 注释以 # 开头,直到该物理行结束。

Python 用作计算器

数字

解释器像一个简单的计算器:输入表达式,就会给出答案。表达式的语法很直接:运算符 +、-、*、/ 的用法和其他大部分语言一样(比如,Pascal 或 C);括号 (()) 用来分组。

整数(如,2、4、20 )的类型是 int,带小数(如,5.0、1.6 )的类型是 float。

除法 ( /) 总是返回一个浮点数。要进行地板除法并获得整数结果,您可以使用//运算符;计算你可以使用的余数%

Python 用 ** 运算符计算乘方

等号(=)用于给变量赋值。

混合类型运算数的运算会把整数转换为浮点数

Python 还支持 Decimal 或 Fraction, 复数。

字符串

用单引号(’……’)或双引号("……")标注的结果相同。

反斜杠 \ 用于转义

默认字符串为utf8字符串,在引号前添加 b 为ascii字符串(每个字符占1个字节)

csdn 羽丶千落 字符串和bytes类型相互转换

str.encode():将字符串编码,默认编码为ascii

str.decode():将字符串解码为utf8

在引号前添加 r 为原始字符串,不会进行转义

三重引定义多行字符串字面值:"""…""" 或 ‘’’…’’’。 字符串将自动包括行结束符,在换行的地方添加一个 \ 则不包含。 参见以下示例:

字符串可以用 + 合并(粘到一起),也可以用 * 重复

字符串支持 索引 (下标访问),第一个字符的索引是 0。单字符没有专用的类型,就是长度为一的字符串:

索引还支持负数,从右边开始计数:-0 和 0 一样,负数索引从 -1 开始。

字符串支持 切片。切片 提取子字符串:开始索引默认值为 0,结束索引默认为到字符串的结尾:注意,切片输出结果包含开始,但不包含切片结束(左闭右开)。s[:i] + s[i:] 总是等于 s:

索引越界会报错,切片会自动处理越界索引:

Python 字符串不能修改,是 immutable 的。为字符串中某个索引位置赋值会报错

内置函数 len() 返回字符串的长度

str.strip():返回该字符串去掉前后的空格的拷贝

判断是否包含字符串使用in

列表

用方括号标注,逗号分隔的一组值。列表可以包含不同类型的元素,一般情况下,各个元素的类型相同:

列表也支持索引和切片

切片返回原列表的 浅拷贝:

列表支持合并操作:

1
2
>>> squares + [36, 49, 64, 81, 100]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

列表是 mutable 类型,其内容可以改变:

append() 方法 在列表结尾添加新元素:

1
2
3
4
>>> cubes.append(216)  # add the cube of 6
>>> cubes.append(7 ** 3)  # and the cube of 7
>>> cubes
[1, 8, 27, 64, 125, 216, 343]

为切片赋值可以改变列表大小,甚至清空整个列表:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
>>> letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
>>> letters
['a', 'b', 'c', 'd', 'e', 'f', 'g']
>>> # replace some values
>>> letters[2:5] = ['C', 'D', 'E']
>>> letters
['a', 'b', 'C', 'D', 'E', 'f', 'g']
>>> # now remove them
>>> letters[2:5] = []
>>> letters
['a', 'b', 'f', 'g']
>>> # clear the list by replacing all the elements with an empty list
>>> letters[:] = []
>>> letters
[]

内置函数 len() 支持列表:

1
2
3
>>> letters = ['a', 'b', 'c', 'd']
>>> len(letters)
4

可以嵌套列表(创建包含其他列表的列表)

走向编程的第一步

斐波那契数列 的初始子序列,如下所示:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
>>> # Fibonacci series:
... # the sum of two elements defines the next
... a, b = 0, 1
>>> while a < 10:
...     print(a)
...     a, b = b, a+b
...
0
1
1
2
3
5
8

第一行中 多重赋值:变量 a 和 b 同时获得新值 0 和 1。右表达式在赋值前求值,求值顺序为从左到右。

Python 和 C 一样,任何非零整数都为真,零为假。这个条件也可以是字符串或列表的值,序列也可以;长度非零就为真,空序列为假。

比较操作符的标准写法和 C 语言一样: < (小于)、 > (大于)、 == (等于)、 <= (小于等于)、 >= (大于等于)及 != (不等于)。

循环体 是 缩进的 :缩进是 Python 组织语句的方式。

print() 函数输出给定参数的值。它能处理多个参数,包括浮点数与字符串。它输出的字符串不带引号,且各参数项之间会插入一个空格:

关键字参数 end , 用另一个字符串替换结尾换行符

关键字参数 sep , 用另一个字符串替换各参数项之间的空格

 |