python学习笔记
列表(list)
- 定义:用
[...]。 - 下标:
0~len-1分别对应着-len~-1。 - 切片:
[a:b:c],a是起始下标(闭),b是末尾的下一个下标(开),c是步长(默认为1)。
起始下标为0可以不写,末尾下标为len可以不写。 append(x):向列表末尾添加单个元素x。extend([x,y,...]):向列表末尾添加多个元素x,y,...。insert(p,x):向列表指定位置p添加单个元素x。
注意下标小于p的元素不变,大于等于p的元素向后平移。count(x):返回列表中元素x出现的次数。copy():返回一个相同的列表。(与原列表内存地址不同)
注意:直接用=赋值的列表指向的是同一个地址!!!sort():没有返回值,对列表本身直接改变。加参数reverse=True排倒序。reverse():没有返回值,翻转列表本身。join(list):这其实是一个字符串的方法,用法是将list中的元素连接成一个字符串。注意list中的元素全部要是字符串类型。通常可以这样用:
str = "".join(['1','2'])
# 等价于 str = "12"
list(target):这是一个内置函数,将target转化成列表并返回这个列表。目前已知target的类型可以是字符串或者元组。len(list):内置函数,返回列表list的长度。sorted(list):排序list(本身不会改变),返回排序后的列表。加参数reverse=True排倒序。
元组(tuple)
即不可变的列表。
- 定义:用
(...)。 - 下标:同列表。
- 拆包:
a,b,c,d,e,...=t,a等变量分别拿到元组t中第1个,第2个,……的元素。
a,*b,c=t,a拿第一个,c拿最后一个,剩下都是b。(只能有一个*,也可以在a或者c前面)。 list():内置函数,元组转列表。
字符串
- 性质:字符串是不可变的。(不能添加,修改,删除)在字符串末尾拼接之类的操作都不是对原字符串进行操作,而是返回了一个新的字符串。
- 格式化:
f"{变量名1}...{...}",括号里面写变量名即可。 - 取消转义:两个
\\或者字符串前面加上r。格式化的f可以一起加上来,写成fr""。 \b:删除符号。index(x,p):返回元素x在字符串中,从下标p开始第一次出现的下标。(x是字符串)
元素不存在会报错。find(x,p):一毛一样,元素不存在不会报错,而是返回-1。replace(x,y,cnt):将子串x替换成y,替换cnt次,返回新的字符串(原串不变)。cnt不写默认全部替换。strip():去除两端的空格。lstrip():去除左端的空格。rstrip():去除右端的空格。split(s):以s为切割条件切割字符串,返回一个列表。第二个参数num是切割num次,也就是分成num+1个子串。
如果s填上去了,就算它是第一个子串或者末尾的串,都会在列表的头部或者尾部加上一个空字符''。不填s,就默认删除所有的空字符(空格,\n,\t)。upper():全部转大写。lower():全部转小写。swapcase():大写转小写,小写转大写。
这仨对非字母字符不做处理。isalpha():判断是否全部为字母。isupper():判断是否全部为大写。(不考虑数字等非字母字符)islower():判断是否全部为小写。(不考虑数字等非字母字符)isdigit():判断是否全部为数字。replace(" ",""):去除所有空格。
其它
len(str):内置函数。
字典(dict)
- 字典的元素是:键值对,key-value,key需要是不可变数据类型。
- 直接用
[],不存在键的时候会报错,用get则会返回None,不会报错。 get(x,y),查询键x对应的值,查询不到则返回y,y默认为None。setdefault(x,y),同上。但是如果x不存在,还会额外添加一个x:y的键值对。a=['1':1,'1':2],一个键有多个值,会保留最后一个值。update({字典}):有则修改,无则新增。pop(name)根据键名删除。popitem()删除最后一个元素。clear()清楚所有的元素。- 空列表,元组,字符串,字典都是False。
id(dict):获取dict地址。copy():复制。keys():返回由字典的键构成的dict_keys。values():返回由字典的值构成的dict_values。items():返回由字典键值对构成的dict_items(元素是长度为2的元组)。
这仨可以用list转成列表。
集合(set)
- 集合中的元素不重复,小于32的值才会有点像排序的顺序,但其实不会排序。
- 交集
s1 & s2,并集s1 | s2,差集s1 - s2(其实就是s1 - (s1 & s2))。 a = {}空字典,a = set()空集合。a.add(7)添加元素7。a.update({1,2,3})添加元素1,2,3。a.remove(1)删除元素1。不存在会报错。a.discard(1)删除元素1。不存在不会报错。a.pop()删除第一个元素。(其实是随机删除一个元素)

浙公网安备 33010602011771号