Python知识点总结
第一章 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()(粘贴)