2022-09-26
组合数据类型:
列表
字典
集合
元组
拷贝:
deep(深拷贝)
shallow(浅拷贝)
区别:例如,文件中有一个指针指向另一块存储空间,如果是深拷贝则将指向的那一块文件内容也全部拷贝,如果是浅拷贝那么不需要将指针指向的内容进行拷贝,只拷贝第一层级的内容。指针指向的内容属于第二层级。
列表的查找与排序:
(1)查找
list.index(key )#其中key为列表中的值
# 查找 list1 = ['s','l','m','i'] try: print(list1.index('i')) # 查询的是key except Exception as e: print(e)
(2)排序:
list.sort() #存放的结果仍然在list中,之后打印它
'''排序''' list1 = ['s','l','m','i'] list1.sort() print(list1) help(list.sort) #参看列表排序函数的说明 # 不能直接打印"print(list1.sort())" # 使用help查询,切记不能使用小括号,查询结果为稳定排序
(3)排序:
sorted(list)
'''列表排序''' list1 = ['s','l','m','i'] print(sorted(list1))
(4)反转
list1 = ['s','l','m','i'] '''反转''' list1.reverse() print(list1)
元组(tuple):
说明:
元组的值是不可以修改的,表现在元组的删除。如果要删除,则是将整个元组都删除.
元组是写在()内的。
元组的创建:
tuple() # 空的元组
非空的元组;
使用(),里面放入数据,中间使用逗号隔开。
t = tuple('string') print(t) # 注意,元组里面如果要传入字符串类型,则只能传一个字符串整体,不能传多个字符串。否则会报错
'''元组的创建——方式二''' t = (1,2,3) print(t)
元组的访问:
可以通过索引访问,也可以直接访问元组变量。
'''元组的访问''' t = tuple("1,2,3") # 啊啊啊,简直了,元组内部传入的值,必须加上"",要不然会报错 print(t[0]) print(t)
元组的删除:
使用del
del t print(t)
t是指上面创建的t。
字典(dict):
说明:
字典是以键值对形式表现的集合,外面是一个{},字典无序、可变,列表有序,元组有序、不可变。
but 字典中有索引,是数据本身自带的。
字典的创建:
使用{},中间放置”key“,"value",例如:
'''字典的创建——方式一''' dict1 = {'k':25,'m':6,'a':29} print(dict1)
'''字典的创建——方式二''' dict2 = dict({'l':'10','o':'20'}) print(dict2)
字典的访问:
'''字典的访问''' for key,value in dict1.items(): print(key) print(value) # 在for循环中,注意要输出的是临时变量,而不是下面的,如果要用到下面的语句,要单独输出 print(dict1.values()) print(dict1.keys())
# 调用item()函数时,返回的是一个列表中包含的元组对象。为可迭代对象 for item in dict1.items(): print(item)
字典的添加与修改:
"""字典的添加与修改""" dict1['p'] = 52 print(dict1) dict1['k'] = 26 print(dict1)
添加一组数据,如果该字典中有对应的key,那么此时的添加为修改,会覆盖掉原来元素的value值;如果没有对应的key,那么为字典的添加。
字典的删除:
'''删除字典元素''' """方式一""" # del dict1['k'] # print(dict1) """方式二——指定删除""" # dict1.pop('k') # print(dict1) """方式三——随机删除""" # dict1.popitem() # print(dict1) """方式四——全部删除""" # del dict1 # print(dict1)
使用相应的函数时,将前面的注释去掉即可。
字典的排序:
# 按照key的值进行排序 # print(sorted(dict1.items(),key=lambda x:x[0])) # 按照value的值进行排序,如果是数字,默认是从小到大排序,如果是非数字,则按照ASCII码进行排序 # print(sorted(dict1.items(),key=lambda x:x[1])) # for i in sorted(dict1.items(),key=lambda x:x[1]): # print(i)
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python中组合数据的操作 - Python技术站