常见数据类型及其方法
程序员文章站
2023-11-13 09:17:58
常见数据类型及其方法 1.None: 2.整形(int) 3.布尔类型(bool) 4.字符串(str) (不可变类型,不可修改/删除) 特有方法: upper:转大写 lower:转小写 name = 'alex'new_name = name.upper()print(new_name) #AL ......
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
-