P47-P53 字符串
res = 'a' in 'abc'
res = 'a' not in 'abc'
# 切片 倒序
s = 'abcd'
a[2]
a[0:2]
a[::-1]
a[]
'{},{}'.format(xx,oo) # 逐个匹配
'{1},{0},{2}'.format(xx,yy,zz) # 标号匹配
内建函数
capitalize() # 首字母大写
title() # f返回首字母大写的字符串
upper()
lower()
# 查找相关
in 查找 返回 true flase
find(str, beg=0, end=len(str)) # 返回 索引 ,无 -1
rfind() # right find 从右侧开始
lfind() # left find
index(str, beg=0, end=len(str)) # 找不到 抛出异常
rindex() lindex()
replace(old, new, [max]) # max: 次数
编码
encode()
decode()
# gbk 中文
# gb2312 简体中文
# unicode
# utf-8 Unicode的升级版 国际标准
s = '你好'
rest = s.encode('utf-8') # 中文在网络上传播,都需要编码,得到字节 b'\x 二进制字节
ss = rest.decode('utf-8') # 得到的字节 进行解码 得到字符串
startwith() endwith() # 判断是否是 以 xx 开头/结尾, 返回 true flase
isalnum() isalpha() isdigit() isspace()
#纯字母或数字 纯字母 纯数字
max() min() count()
join(seq) # 连接字符,按某字符串为分隔符
new_str = '-'.join('abc')
# 得到的new_str 为 'a-b-c'
# 更常用于 列表
li = ['a','v','1','9']
result = '*'.join(li)
# 得到新的字符串 'a*v*1*9'
# 去除 字符串 空格
strip()
lstrip()
rstrip()
# 裁剪 分割
split()
P53-P56 作业 pass
列表 List
P51 - 67
del li[x] # 删除
# 练习循环删除
xxx = []
xxx.append() # 末尾追加
xxx.extend() # 逐个追加,列表合并
new = xxx + ooo # 列表合并
xxx.insert(1, 'xx') #
sorted(list) # 列表排序 python自带, 默认升序 reverse = Flase
sorted(list, reverse = True) # 降序 排序
sorted(list) # 函数
list.sort() # 方法
# 列表函数方法:
del list[index]
remove('abc') # 删除第一个匹配项, 成功无返回,找不到报异常
pop() # 出栈 返回出栈元素
pop(index) # 取出指定下标元素
clear() # 清除列表,无返回值
list.reverse() # 反转
枚举
enumerate() # 将列表返回 下标 和 内容
for index,value in enumerate(list):
print(index, value)
元组 ( )
P68 - 69
tuple # tuple 的元素不能增删改,只能查
(1,) # 元组里只有一个元素
tup = tuple(list) # 列表 转换为 元组
# 一对一
t1 = (2,3,6)
a, b, c = t1 # 元组 赋值
# 多对多
t2 = (2,3,5,6,8,9)
a, *b, c = t2 # a=2, b=[3,5,6,8], c=9
*m = 4,5,6,7 # * 并且 赋值 为 装包
print(*b) print(*[3,5,6,8]) # * 并且 输出 :拆包 散列值
a,b,*c = (9,1) # a=9, b=1, c=[]
# 拆、装包符号 *
字典
P70 - P76
dict key:value 键值对
# 定义
dict1 = {}
dict1 = dict()
dict2 = dict( [(k1,v1), (k2,v2) ] ) # 列表里两个 元组 强制转换 字典
# 增 改
dict1[key] = value # 存在则更改,不存在则新增
dict.update(dict2) # 字典不支持 { }+{ }
new_dict = dict.fromkeys(list [,default]) # 列表转字典?
# 查
dict[key] # 获取,不存在 抛异常
dict.get(key) # 取不到,返回None
dict.get(key, xx) # 取不到,返回默认值xx
# 删
del dect[key] # 不存在,同查,抛异常
dict.pop(key [,default]) # 取出 + 删除;不存在:None 或 [默认值]
dict.popitem() # 末尾删除 LIFO
dict.clear() # 清空
# 字典遍历
for k, v in dict2:
print(k,v) # 遍历 key-value
for i in dict2:
print(i) # 遍历key
# 字典函数:
for tup in dict2.item():
for key,value in dict2.item():
dict.item() # 取出所有的key-value 列表(元组):[(k1,v1), (k2,v2), (k3,v3), (k4, v4)]
dict.keys() # 取出所有key 列表
dict.values() # 取出所有value 列表
集合 set
特点 P77-87
无需 不重复
增删改查
list1 = [1,2,3,4,5,6,7,8,8,7,6,5,4,3,2,1]
s1 = set(list1)
t = ('wbd','qwer')
s2 = set()
s2.add(t) # 把元组当成整体 加入
s2.add(1116)
s2.update(s1) # 合并 添加
#删
print(s2)
# s2.remove(1116) # 删除不存在 抛异常KeyError
s2.pop() # 删除第一个元素,抛异常
s2.clear()
s2.discard(1116) # 同 remove ,但不报错
set 不支持 + *
* 差集 -
difference()
print(s1,s3)
print(s3 - s1, s1 - s3)
print(s3.difference(s1),
s1.difference(s3))
- 交集 &
print(s1.intersection(s3))
print(s3 & s1)
- 并集 |
print(s1 | s3)
print(s1.union(s3))
- ^ 对称差集 不同的元素
s1 ^ s3
s1.symmetric_difference(s3)
数据类型 可变不可变
- 不可变:
- 小整数对象池,id改变
- int float str 元组tupke
- 可变
- dict list
- 内容改变,id不变
类型转换
# 字符串转 其它
int(str)
dict(str)
list(str)
set(str)
tuple(str)
# 其他 转 字符串
str() # 外层 加 引号 ' '
list --> set, tuple
set, tuple–> list # 加[ ]
dict -k-> list # 仅保存key到列表
在b站学习中,学习链接
欢迎 批评 指正