数据类型内置方法
概要
-
整型和浮点型内置方法
-
字符串内置方法
-
列表内置方法
-
字典内置方法
-
集合内置方法
详情
必备知识
#查看数据类型拥有的内置方法:句点符 格式: 数据类型. PyCharm会自动提示该数据所有的内置方法
-
整型和浮点型内置方法
1、整型int int()只能转换不带小数点的数字及单个整数的字符串类型 1.将数据类型转换成整型 2.其他进制字符串转换成十进制 n = '222' print(int(n)) # 222 n = 222 #将十进制转换成二进制 binN = bin(n) # 0b11011110 0b开头:二进制数 #将十进制转换成八进制 octN = oct(n) # 0o336 0o开头:八进制数 #将十进制转换成十六进制 hexN = hex(n) # 0xde 0x开头:十六进制 '''将其他进制转回十进制数''' print(int(binN, 2)) print(int(octN, 8)) print(int(hexN, 16)) 2、浮点型 float float()可以转换数字和数字类型的字符串(整数补.0) n='888' print(float(n)) # 888.0 n='88.88' print(float(n)) # 88.88 n='money’ print(float(n)) # 报错 不能转换不是数字的字符串

-
字符串内置方法
# str()可以将任意数据类型转换成字符串 name = 'Leoric' 1.len() 统计字符个数 print(len('Leoric')) #6 2.索引取值 print(name[0]) #L 3.切片取值 print(name[1:5]) # 从索引为1的字符取到索引为4的字符 4.步长/间隔取值 print(name[1:5:2]) # 每隔一个字符取个值,默认为1 5.strip() 移除字符串首位指定字符,参数默认空格 name = '¥¥Leoric¥¥' print(name.strip('¥')) # Leoric print(name.lstrip('¥')) # Leoric¥¥ print(name.rstrip('¥')) # ¥¥Leoric 6.split()按照指定字符切割数据,会将切割结果组合成列表 data = 'Leoric|888|student|study' print(data.split('|')) # ['Leoric', '888', 'student', 'study'] print(data.split('|',1)) #参数定义切出的字符数 # ['Leoric', '888|student|study'] print(data.split('|',maxsplit = 1)) # 最大切割数 print(data.rsplit('|')) # 从右边开始切 7. upper()/lower() 大小写转换 res = 'yr2MY' print(res.upper()) #转大写 YR2MY print(res.lower()) #转小写 yr2my print(res.isupper()) #判断字符串是否是纯大写 print(res.islower()) #判断字符串是否是纯小写 8.isdigit() 判断字符串是否是纯数字 print('888'.isdigit()) # True print('Leoric888'.isdigit()) # False 9.统计字符出现的次数 res = 'my name is Leoric Leoric Leoric' print(res.count('Leoric')) # 返回3 10.替换指定的字符 # 可加参数限制替换个数 res = 'my name is Leoric Leoric Leoric' print(res.replace('Leoric', '888')) print(res.replace('Leoric', '888', 2)) 11.按照指定的字符拼接字符串 list1 = ['Leoric','888','Game'] print('¥'.join(list1)) 返回# Leoric¥888¥Game name1 = 'Leoric' pwd1 = '888' hobby1 = 'Game' print(name1 + '¥' + pwd1 + '¥' + hobby1) # 返回Leoric¥888¥Game

-
列表内置方法
l1 = list('Leoric') 1.list() 只能将支持for循环的数据类型转换成列表 list('Leoric') list({'name': 'Leoric'}) # 只能按字典的键转换,值不行 2.len() 统计元素个数 print(len(l1)) # 返回6 3.索引取值 print(l1[0]) # 返回L 4.切片/步长取值 print(l1[0:4]) # ['L', 'e', 'o', 'r'] print(l1[0:4:2]) # ['L', 'o'] 5.添加列表元素 (1)尾部追加 将参数当成"一个元素"添加到当前列表尾部 l1.append('666') # ['L', 'e', 'o', 'r', 'i', 'c', '666'] (2)指定位置插入 l1.insert(1, '888') # ['L', '888', 'e', 'o', 'r', 'i', 'c'] (3)扩展列表 l1.extend([0, 1, 2, 3]) # ['L', 'e', 'o', 'r', 'i', 'c', 0, 1, 2, 3] ''' 不用extend扩展列表 for n in [0, 1, 2, 3] l1.append(n) ''' 6.删除元素 (1)del/del() 通用的删除方法 del l1[0] # ['e', 'o', 'r', 'i', 'c'] (2)pop() 弹出元素,删除前可调用 res = l1.pop(1) print(res) # 返回 e (3)remove() 真正删除 7.count(元素) 统计元素出现的个数 8.sort()排序 默认升序,添加参数reverse = True改为倒序 l2 = [12,3241,435,5463,123,2] l2.sort() print(l2) # [2, 12, 123, 435, 3241, 5463] l2.sort(reverse = True) print(l2) # [5463, 3241, 435, 123, 12, 2]

-
字典内置方法
userDict = {'userName':'Leoric', 'pwd':'666'}
1.len() 统计键值对个数
print(userDict) # 返回2
2.按键取值
userDict['userName'] # Leoric 如果键不存在会报错
'''推荐'''
userDict.get['xxx'] # 键不存在也不会报错,返回None
3.设置值
userDict['userName']='Leoric666' #该键对应的值会被修改
userDict['xxx']='666' #键不存在则新建键值对
4.删除值 字典的键值对是整体
userDict.pop('userName')
print(userDict) # {'pwd': '666'}
5.小方法
keys() # 获取字典的键,组合成列表返回
values() # 获取字典的值,组合成列表返回
items() # 获取字典的键值对,组合成列表返回
-
集合内置方法
l1 = [11,22,32,11,11,22,33,44,33,45,44] 集合内元素无序 1.set() 将列表转换成集合 #去重 s1 = set(l1) print(s1) # {32, 33, 11, 44, 45, 22} 2.关系运算(交叉并集) eg:共同好友,共同点赞等 f1 = {'Leoric', '666', '888'} f2 = {'222', 'Leoric', '666'} # 1.求共同好友 print(f1 & f2) # {'666', 'Leoric'} # 2.求f1独有的好友 print(f1 - f2) # {'888'} # 3.求f1和f2所有的好友 print(f1|f2) # {'666', '888', 'Leoric', '222'} # 4.求f1和f2独有的的好友 print(f1^f2) # {'222', '888'} # 5.包含关系 print(f1<f2) # f1是否是f2的子集 False print(f1>f2) # f1是否是f2的父集 False
1、l = [11,22,33,44,55,66,77,88,99]
将列表中大于60的存入字典k1键对应的列表中
小于60的存入字典k2键对应的列表中
d = {'k1':[],'k2':[]}
l = [11, 22, 33, 44, 55, 66, 77, 88, 99] k1 = [] k2 = [] # 循环列表l中的值 for n in l: # 判断 if n > 60: # 如果大于60,放入列表k1 k1.append(n) else: # 小于60,放入列表k2 k2.append(n) # 将列表k1, 和k2分别作为字典d中键k1和k2的值 d = {'k1': k1, 'k2': k2} print(d)
2、l = [11,22,33,22,11,22,66,55,77,99]
对列表元素进行去重 拔高:去重之后保持原来的顺序(不要惯性思维)
l = [11, 22, 33, 22, 11, 22, 66, 55, 77, 99] newL = [] for n in l: # 1.循环列表元素 if n not in newL: # 2.判断列表元素是否在新列表中 newL.append(n) # 3.是就将元素追加到新列表 print(newL)

3、有如下两个集合,pythons是报名python课程的学员名字集合,linuxs是报名linux课程的学员名字集合
pythons={'jason','egon','kevin','ricky','gangdan','biubiu'} linuxs={'kermit','tony','gangdan'}
1、求出即报名python又报名linux课程的学员名字集合
2、求出所有报名的学生名字集合
3、求出只报名python课程的学员名字
4、求出没有同时这两门课程的学员名字集合
1.print(pythons & linuxs) 2.print(pythons | linuxs) 3.print(pythons - linuxs) 4.print(pythons ^ linuxs)



浙公网安备 33010602011771号