第一章 Python基础
标题名称 | 包含内容,使用方法及使用范围 | ||
1.1数学操作符 | **(指数),%(取模/取余),//(整除/商取整),/(除法),*(乘法),-(减法),+(加法)。基本与数学计算方式类似,**首先求值,其次%,//,/,*,最后是-,+,从左到右依次计算。 | ||
1.2三种类型 | Int()(整型),Float()(浮点型),Str()[字符串:“”]。表达式是值与操作符的组合。 | ||
1.3字符串复制与连接 | +或* | Str()+或*Str(),*只能用于数字,或一个数字一个字符串。 | |
1.4赋值语句 | 变量= | 变量的选取:只能是一个词;只能包含下划线、数字、字母;不能以数字开头。变量是区分大小写的, | |
1.5input()函数:输出 | 变量=input()输出为字符串,变成整型为变量=int(input())。 | ||
1.6print()函数:打印 | 打印出括号内的字符串,可在括号内添加变量,字符串,或变量+字符串使用+号连接。 | ||
1.7len()函数:求个数 | 求字符串中字符的个数,将变量或者字符串传递到括号内,输出为整型。 | ||
1.8round()函数:保留小数 | round(保留小数的数字,保留小数点后几位)四舍五入。 | ||
第二章:控制流(1) | |||
标题名称 | 包含内容 | 用法 | 备注 |
2.1布尔值 | True/Flase | 首字母大写不像字符串两边有引号 | |
2.2比较操作符(6种) | < ,<= ,> ,>= ,!= ,==。整型或浮点型永远不会与字符串相等,前四者仅用于整型或浮点型。 =赋值符号与==操作符不同,前者是将右边的值放到左边的变量中,后者是问两个值是否相同。 | ||
2.3布尔操作符(3种) | and/or/not,and和函数,全真为真,有假为假;or一真为真,全假为假;not反函数,真为假,假为真。格式:条件and/or条件,not 条件。优先级:先not,再and,最后为not。 | ||
2.4控制流元素 | 条件(T/F) | 控制流的根本条件是T还是F来决定做什么 | |
代码块 | 规则:缩进增加,代码块开始;可包含其他代码块;缩进为零或者或减少外包围代码块的缩进,代码块结束。 |
第二章 控制流(2)
标题名称 | 包含内容 | 用法 | 备注 |
2.5控制流语句 if,elif,else三者左对齐 陷入无限循环用 ctrl+c跳出程序 | if语句 | If 条件: | 如果语句。下一行缩进(为if子句)。 |
elif语句 | elif 条件: | 否则如果语句。(可多次使用)跟在if语句后面,若有多个elif语句仅有一条或零条被执行零条被执行说明if语句中的条件为真 | |
else语句 | else : | 否则语句。if子句,后面跟着else语句。 | |
While语句 | While 条件: | 循环语句。子句中包含变量=变量+整型 | |
braek语句 | break | 打破循环跳出while循环语句。(只用于while内部) | |
coutinue语句 | coutinue | 内部循环语句遇到coutinue返回到循环开始出。只用于while内部 | |
for循环语句range()函数 | for i in range(x,y,z): | 固定次数循环,i从0开始,x为开始值,y为停止值,z为步长。打印从x值开始到y-z值结束。 | |
2.6导入模块 | import | import rondom print(random.randint(x,y))#从x到y抽取一个随机数字[模块.函数(参数)] | |
from import | From 模块 import * | 使用模块中的函数数就不用加模块.print(randint(x,y)) | |
sys.exit() | sys.exit() | 引入sys模块,sys.exit()终止或退出程序,与break不同,前者无局限任何语句都适用,而break仅用于while语句之中。但前者是终止或退出程序,它后面若有其他程序也不在进行,因为已经终止程序了,而break只是跳出了while循环语句之中,其后面若有语句还会继续进行。 |
第三章 函数
标题名称 | 用法 | 备注 |
3.1def语句和参数 | def 函数名(参数): | 保存变元中的值,在函数返回之后就丢失了,函数在定义时不执行,调用时执行,在def定义函数语句的外面(全局作用域) |
3..返回值和return语句 | return 关键字或表达式 | 如果在return中使用表达式返回值表达式的结果。不带参数或者不写return默认返回None。 |
3.3None值 | 表示无值 | |
3.4关键字参数和print() | print(“”,end=“”) | 取消换行符,将带有end的print()和下一行print()连在一起。相当于+ |
print(“”,sep=“”) | sep=” ”,在此双引号内添加所需内容,就会在字符串之间打印出来 | |
3.5局部作用域(a) 全局作用域(A) (用a和A表示) | A不能访问a,但a可以访问A。 一个函数的a中的代码,不能访问其他a的变量。 如果在不同的作用域中,可用相同名字命名不同变量。 局部变量不能在A内使用;a不能使用其他a内的变量;全局变量可以在a中读取; | |
3.6global语句 | def 变量(参数): global 变量1 变量1=“” | 在函数中修改全局变量。 区分变量是处于全局四条法则: 变量在全局作用域使用(即在所有函数之外),总是全局。 在一个函数中应用了global语句。就是全局。 变量用于函数中的赋值,就是局部。 没有用在赋值语句上,就是全局。 |
3.7异常处理 | 用try和except语句处理 | try: (return)<语句块> except <异常类型>: #异常类型是固定格式。 |
- 列表(1)
标题名称 | 包含内容及用法 | 备注 | |
4.1列表类型 | A=[“1”, ”2” ,”3”] | [ ]空列表,列表[ ]里有字符串依次用,隔开。 | |
下标取值 | A[0]=”1”A[1]=”2” | 从左向右下标取值,从0开始依次向右递增1个步长 | |
负数下标 | A[-1]=”3”A[-2]=”2” | 从右向左负数下标,从-1开始向左依次递减1个步长 | |
切片得子列表 | A[0:2]=[“1”, ”2” ] | 实际输出[A[0],A[1]]不包含切片中的末值,也就是A[2]. | |
len()取得列表长度 | len(A)=3 | 返回传递给列表中值的个数 | |
下标改变列表中的值 | A[0]=”4” | print(A)输出为[“4”, ”2” ,”3”] | |
连接(+) | [“1”]+[“2”] | [“1”,“2”] | |
复制(*) | [“1”]*2 | [“1”,“1”]仅限于一个列表*一个整数 | |
4.2使用列表 | 循环 | for i in range(len(列表))子语句中带有列表[i]将迭代所有下标,使用方便。 | |
in操作符 | 字符串in 列表 | 确定值是否在列表中连接两个值一个在列表中查值,一个是待查的列表 | |
not in操作符 | 字符串in/not in 列表 | ||
多重赋值技巧 | A=[“1”,”2”]/n“3”,”4”=A | 变量的数目和列表的长度必须严格相等。 | |
增强的赋值操作 (+,-,*,/,%) | 变量数学操作符=数字 | 例如:a+=-5相当于a=a+5()。+=完成字符串和列表的连接,*=字符串和列表的复制。 | |
4.3方法 | index()在列表中查值 | 列表.index(列表中的参数) | 如果是非列表中的参数会出现ValueError错误,在列表中存在重复的值,就返回第一次出现的下标。 |
append()添加值 | 列表.append(字符串) | 将参数添加到列表末尾()append,Insert只能用于列表。 | |
Insert()添加值 | 列表.insert(数字,字符串) | 在列表中任意下标插入一个值。数字是新值下标字符串新值 | |
remove()删除值 | 列表.remove(字符串) | 在列表内删除被调用的字符串。删除列表中不存在值出现ValueError知道删除值的下标用del想在列表中删除值就用它。 | |
sort()排序 | 列表.sort() | 单独用于数字,字符串不能混用。列表.sort(reverse=True)逆序排列,直接用,不能用于变量=其格式 | |
sort(key=str.lower)普通字典排序,a A b B按此序 |
第四章 列表(2)
标题名称 | 包含内容及用法 | 备注 | ||
4.4 类似 列表 类型 | 字符串(特殊的列表) | 单个文本列表。对列表的许多操作也适用下标取值,如切片.for,len,in/not in | ||
可变和不可变数据类型 | 列表是可变的,字符串是不可变的,重新赋值就出错,可用切片在原基础上改动。 | |||
元组 | 几乎与列表一样但元组用()元组像字符串不可变不能修改添加删除值。元组中有一个值时可在之后加个逗号说明它是元组。需要一个不能改变的值的序列,就用它 | |||
List()和tuple()函数转换类型 | tuple(列表) | 转换成元组 | ||
list(元组或字符串) | 转换成列表(单个字符串的值的列表如“你好”变成[“你”,好”]) | |||
4.5引用 | 给列表赋给一个变量,实际上是将列表中的“引用”赋给了变量。引用是一个值,指向某些数据。如a是一个列表。当把a赋值给了一个变量A,那么A也是一个列表。当在A[x]=n时,它就会在列表a下标为x的位置添加(*)一个n值。最后,a和A将会指向一个在a列表的基础上,在a列表下标为x处添加n的新列表b。 | |||
4.6传递引用 | 参数如何传递给函数,引用就很重要,当函数被调用时,参数的值就复制给了变元,变元得到的是引用的拷贝。 | |||
4.7cpoy模块列表和字典 | copy()函数 | 变量=copy.copy(列表),当变量改变其列表中的值时,原列表不变。变量的列表和原列表是独立的 | ||
deepcopy() | 要复制列表中包含的列表用deepcopy。深度拷贝。与copy()函数格式相同。 | |||
小总结:字符串逗“ ”,列表方[ ],元组圆( ),字典花{ }。引用都变,拷贝(原列表)不变。 |
- 字典和结构化数据
标题名称 | 包含 | 作用 |
5.1字典数据类型 keys()Values()items() 三个字典方法将返回类似列表的值,返回的值不是真正的列表,它们不能被修改。 | {k:v} | K是字典的索引被称为键,V是字典的值,两者中间:隔开。可用整数做键和值,以键访问值。如a是字典,a[k]=V访问时用[ ]。字典内无序,不能切片。试访问不存在的键将致KeyError。像列表中的越界indexError。无序可用任意值做键,程序结束后在程序中输入的所有数据丢失 |
keys() | 与键有关,list(字典.keys())就返回一个列表。 | |
values() | 与值有关list(字典.values())就返回一个列表。 | |
items() | 与键-值有关字典.items()返回一个dict_items([(k, v)) | |
检查在的键-值 | 用in/not in 检查值是否在字典中v in/not in字典.values(),检查键就替换掉v用k和keys. | |
get()方法 | get(x,y)x为取得其值的键,y为如果该键不存在,就返回备用值y。 | |
setdefault()方法 | 为键k设置一个默认值k1,当该键没有任何值时就使用k1。字典.setdefault(k,k1) | |
5.2漂亮打印 | 导入pprint模块 | 使用pprint()和pformat()比print输出结果干净。如果列表包含嵌套的字典或列表就用pprint.pprint(字典或列表),希望得到漂亮打印的文本作为字符串,而不是显示在屏幕上就调用后者pformat(文本)。 |
5.3用字典建模 | 简单建模如井字棋,键作为位置,值作为棋子。用字典排成三行三列。 | |
嵌套字典/列表 | 字典中值含有另一个字典。列表中单个值是另一个列表。 |
第六章 字符串操作(1)
标题名称 | 包含内容 | 用法 | 作用 |
6.1转义字符 | \t | 在字符串内部使用,如“saejf\X”X为到斜杠右边的内容 | 打印制表符,相当于Tab键 |
\’,\’’ | 打印单引号,双引号 | ||
\n | 打印换行符 | ||
\\ | 打印倒斜杠 | ||
6.2原始字符 | r | r“” | 忽略转义字符,全部打印(r后面的全部内容) |
6.3多行字符串(多行注释) | ‘’’ ‘’’(三引号)‘’’ ‘’’ | 三重引号之间的全部内容被认为是字符串的一部分 | |
6.4in或 not in(在或不在) | a (not) in b | 用于查找字符串a在不在字符串b中 | |
6.5(is)upper(是)大写 | 字符串.(is)upper() | 前者输出内容为大写字母字符串,后者为小写字母字符串可连续使用,如字符串.(is)upper()字符串.(is)upper()................. | |
6.6(is)lower(是)小写 | 字符串字符串.(is)upper() | ||
6.7 IsX字符串方法 (均返回为T时) | 字符串.isalpha() | 字符串只包含字母,且非空 | |
字符串.isalnum() | 字符串只包含字母和数字,且非空 | ||
字符串.isdecimal() | 字符串只包含数字,且非空 | ||
字符串.isspace() | 字符串只包含空格、制表符(\t)和换行,且非空 | ||
字符串.istitle() | 字符串只包含大写字母开头,后面都是小写,如Hello | ||
6.8 Startwith(用于开始) | 字符串.startwith(字符串) | 返回为T时,字符串为传入的开始或结束,例如a.(endwith)startwith(b).返回值为T,说明b包含a或者b=a。 | |
6.9 Endwith(用于结束) | 字符串.endwith(字符串) | ||
6.10 Jion(加入) | 字符串1.jion(字符串列表2) | 将前面的字符串1插入后面字符串列表2中的字符串之间 | |
6.11 split(删除) | 字符串1.split(字符串2) | 将字符串1中包含的字符串2的内容删除,返回一个字符串列表。 字符串1可能包含空白字符分割(空格、制表符(\t)和换行)不返回到字符串列表当中。 |
第六章节内容:字符串操作(2)
标题名称 | 格式 | 用法 |
6.12 rjust()(相当于rightjust右对齐) | 字符串.rjust(x,y) | x为整数长度,y为填充字符 ,取代空格字符。 |
6.13ljust()(相当于leftjust左对齐) | 字符串.ljust(x,y) | |
6.14center()(居中对齐) | 字符串.center(x,y) | |
6.15 strip()删除左右两边的空白字符 | 字符串.strip() | 其中,字符串.strip()可在括号内添加可选字符参数,指定字符串两边的那些字符应该删除 |
6.16 rstrip()删除右边的空白字符 | 字符串.rstrip() | |
6.17 lstrip()删除左边的空白字符 | 字符串.lstrip() | |
6.18 pyperclip模块用于拷贝粘贴字符串 | pyperclip.copy(拷贝字符串) | import pyperclip |
pyperclip.paste()(粘贴) |