常见数据类型及其方法
1.None:
表示空(无任何功能,专门用于提供空值)
2.整形(int)
3.布尔类型(bool)
只有两个结果:True/False: 0/''/[]/()/{}/set() 转布尔时为False,其余结果都为Ture
4.字符串(str) (不可变类型,不可修改/删除)
特有方法:
upper:转大写 lower:转小写
name = 'alex' new_name = name.upper() print(new_name) #ALEX
isdigit:判断是否是数字
content = input('请输入内容:') flag = content.isdigit() print(flag) #结果为True/False
strip/lstrip/rstrip: 去除空白,也可以去除换行符(\n)
name = ' alex,xiao ' new_name = name.strip() print(new_name)
replace:替换
content = '去你大爷的' con = content.replace('大爷','**') #当替换的内容有多个时,后面可以加入数字,代表替换前几个内容 print(con) # 去你**的
split:切割 ,得到的是一个列表
content = '12|22,33|44' con = content.split('|') print(con) #['12', '22,33', '44']
format:字符串格式化
name = '我是{0},今年{1}'.format('肖文鑫',18,) print(name)
startswith:判断以什么开头 endswith:判断以什么结尾
name = 'alex' flag = name.startswith('al') print(flag) #结果为Ture/False
encode:转换编码
name = '张三' # 解释器读取到内存后,按照unicode编码存储:8个字节。 v1 = name.encode('utf-8') print(v1) # 转换成了6个字节
join: 循环某个元素,并以某个东西连接起来
name = 'Alex' new_name = '-'.join(name) #注意:join连接的必须的字符串,如果不是需要先转化为字符串再进行连接 print(new-name) # A-l-e-x
公共方法:
len 取长
name = 'Alex' print(len(name)) # 4
索引取值 [ ] (从[0]开始取值)
name = 'Alex' print(name[0]) #'A'
切片 [ : ] (前取后不取)
name = 'Alex' name[0:2] #'Al' name[-3:-1] #'le'
步长 [ : : ] (取不到中间)
v ='123456' v[ : : 2] #135 v[-1:0:-2] #642
for循环
5.列表(list) (可变类型,不需要新的变量去接收)
独有方法
append:在列表末追加元素
v = [1,2,3,4,5] v.append(6) print(v) #[1,2,3,4,5,6]
insert:在列表指定索引值前面加入元素
v= [1,2,3,4] v.insert(0,6) print(v)
extend: 逐个加入
v = [1,2,3] name = 'Alex' v.extend(name) print(v) #[1,2,3,A,l,e,x]
remove:删除指定元素
v = [123,23,45] v.remove(23) print(v) #[123,45]
pop: 根据索引位置进行删除
v = [123,23,45] v.pop(0) #pop()默认删除最后一个元素 print(v) #[23,45]
del ;删除
v = [123,23,45] del v[0] print(v) #[23,45]
修改
v = [123,23,45] v[0] = 11 print(v) #[11,23,45]
reverse :反转
v = [123,23,45] v.reverse() print(v) #[45,23,123]
sort: 排序
v= [2,6,4,8,1] v.sort(reverse=True) #从大到小排列 v.sort(reverse=False) #从小到大排列 v.sort() #默认是从小到大排列 print(v)
公共方法:
len 取长
v= [2,6,4,8,1] len(v) # 5
索引 [ ] 从0开始取值
v= [2,6,4,8,1] v[0] #[2]
切片[ : ]
v= [2,6,4,8,1] v[0:3] #[2,6,4] v[-3:-1] #[4,8]
步长 (取不到中间)
v= [2,6,4,8,1] v[1:-1:2] # [6, 8] v[-1:0:-1] # [1,8,4,6]
for 循环
6.元组(touple) (不可变类型,不可修改/删除)
无特有方法
公共方法
len 取长
a = (1,2,3) len(a) # 3
索引 [ ] 从0开始取值
a = (1,2,3) a[1] # [2]
切片[ : ]从0开始取值,前取后不取
a = (1,2,3,4) a[o:3] #(1,2,3)
步长 (取不到中间)
a = (1,2,3,4) a[::1] #(1, 2, 3, 4)
for 循环
7.字典(dict) 无序
格式
data = {键:值,键:值,键:值,键:值,键:值,键:值,} #键值对 嵌套中: #值可以用所以东西表示 #键不能用列表/字典/集合(等可变类型)表示,其他都可以
特有方法:
keys 取所有的键
data = {11:22,33:44,55:66} for k in data.keys(): print(k) #11,33,55
values 取所有的值
data = {11:22,33:44,55:66} for v in data.values(): print(v) # 22,44,66
items 取所有的键值对
data = {11:22,33:44,55:66} for k,v in data.items(): print(k,v) 注意: a,b,c = [1,2,3] print(a,b,c) #a=1,b=2,c=3
取值
data = {11:22,33:44,55:66} print(data[11]) #22
修改 (存在就修改/不存在就增加)
data = {11:22,33:44,55:66} data[11] = 99 print(data) # {11: 99, 33: 44, 55: 66} data[77] = 88 print(data) # {11: 22, 33: 44, 55: 66, 77: 88}
删除 (del)
data = {11:22,33:44,55:66} del data[11] #删除了一个键值对 print(data) # {33:44,55:6}
pop 删除
info = {'k1':'v1','k2':'v2'} result = info.pop('k2') #v2 print(info,result) #{'k1':'v1'} v2
get取值
info = {'k1':'v1','k2':'v2'} v1 = info['k1'] # v1 v2 = info.get('k1') # v1 (常用此方法) v3 = info.get('k111',666) # 666 (不在字典范围内则打印后面的内容) v4 = info.get('k111') # None
update 批量添加
info = {'k1':'v1','k2':'v2'} #不存在就添加,存在就覆盖 info.update({'k3':'v3','k4':'v4','k2':666}) print(info)
公共方法:
len
data = {11:22,33:44,55:66} print(len(data)) # 3
无切片/步长
for循环
8.集合 (set) 无序/无重复
空集合: set()
特有方法:
交集 (intersection)
a = {1,2,3,4,5,} b = {2,4,6,7} c = a.intersection(b) print(c) # {2, 4}
并集(union)
a = {1,2,3,4,5,} b = {2,4,6,7} c = a.union(b) print(c) # {1, 2, 3, 4, 5, 6, 7}
差集(difference)
a = {1,2,3,4,5} b = {2,4,6,7} c = a.difference(b) #{1,3,5} c = b.difference(a) #{6,7}
单个添加 ;add
a = {1,2,3,4,5} a.add(67) print(a) #{1, 2, 3, 4, 5, 67}
批量添加: update
v = {1,2,3,4,} v.update({5,6,7}) #后面的只能是集合/字典/元组/列表,不能是单独的几个元素 print(v) #{1,2,3,4,5,6,7}
删除: discard
v = {1,2,45} v.discard(45) print(v) #{1,2}
公共方法:
无切片/索引/步长
len
for循环
注意
#嵌套时 1. 列表/字典/集合 不能作为集合里面的元素 2. 列表/字典/集合 不能作为字典里面的key