list 列表
使用list 类型可以存储一系列的相关类型的数据
devices_list = ["127.0.0.1:54001","127.0.0.1:54002","127.0.0.1:54002"]
使用 [] 来定义一个list 列表的数据类型。
列表的常用方法
- append() 追加元素
pop() 删除元素
devices_list = ["127.0.0.1:54001","127.0.0.1:54002","127.0.0.1:54003"]# 查看类型print(type(devices_list))# 查看list的数据长度 #len() 查看数据的长度print(f"list的长度为: {len(devices_list)}")# 追加新的数据devices_list.append("127.0.0.1:54004")print(f"现在list的值:{devices_list}")# 删除list中的最后一个值 pop() 默认删掉最后一个值devices_list.pop()print(f"删除之后,现在list的值:{devices_list}")# 删除list中第一个值 使用 pop(0) 0 表示索引 第一个devices_list.pop(0)print(f"删除第一个值之后,现在list的值:{devices_list}")# 修改list中的值devices_list[0] = "127.0.0.1:64001"print(f"修改第一个值之后,现在list的值:{devices_list}")# 查看list 中元素的值print(f'list中的第二个值为: {devices_list[1]}')
insert() 指定位置插入元素
- sort() 排序
- sort(revers=True) 从大到小排序
lists = [1,5,3,10,9,7]# 在第一值的地方添加元素4lists.insert(0,4) # 0 表示插入位置, 4 表示具体的值print(lists)# 将list中的数据排序lists.sort() # 默认从小到大进行排序print(lists)lists.sort(reverse=True) # 从大到小排序print(lists)
tuple 元组
元组的定义()
定义之后就不能再更高的数据,我们设置为元组。比如地图中的地理位置 坐标。元组中的方法只有查询,没有修改,没有添加,也没有删除方法。map_shanghai = (120.52,30.40) # 定义元组print(type(map_shanghai))
元组和列表的区别:
- 元组定义完成之后值不能修改,而list 可以进行增删改的操作
- 元组定义使用
(), list 定义使用[] - 元组支持的方法只有查找, 而list 有很多。
set 集合类型
# 定义集合fanmao = {"zhangsan","zhangsan","zhangsan","lisi"} # 定义的时候有三个 zhangsan# 集合会自动去除重复的数据print(fanmao) # 会自动去除重复的张三,保留1个 # 去除重复数据# 集合的第二个特征 没有顺序, 无序。 顺序就是可以通过索引值来访问数据nums = {'zhangsan',10,1,4,4,4,3,1,2,4,5,5}print(nums)print(nums[0]) # 报错 不能通过索引来访问
集合的特征
- 自动去除重复数据
- 没有顺序
在平时的使用过程,存储很多数据的使用,没有特殊要求,就使用 list列表类型。
如果要求,数据不能更改,使用元组
数据不能重复,使用集合类型。
数据相互转换
list()
将数据转换为list 列表
>>> sets = {"wang","zhao","zhang","wang","zhao"}>>> print(type(sets))<class 'set'>>>> print(sets){'wang', 'zhang', 'zhao'}>>> a = list(sets)>>> print(type(a),a)<class 'list'> ['wang', 'zhang', 'zhao']>>> tuples = ("wang","zhao","zhang","wang","zhao")>>> print(type(tuples),tuples)<class 'tuple'> ('wang', 'zhao', 'zhang', 'wang', 'zhao')>>> b =list(tuples)>>> print(b)['wang', 'zhao', 'zhang', 'wang', 'zhao']
tuple()
将数据转换为元组
可以将list,set 转换为元组
>>> sets = {"wang","zhao","zhang","wang","zhao"}>>>print(tuple(sets)) # 集合转换为元组('wang', 'zhang', 'zhao')>>> lists = ['wang', 'zhao', 'zhang', 'wang', 'zhao']>>> print(tuple(lists))('wang', 'zhao', 'zhang', 'wang', 'zhao')
set()
可以将 元组,list 列表转换为集合
>>> t1 = ('wang', 'zhang', 'zhao')>>> print(set(t1)){'wang', 'zhang', 'zhao'}>>> t2 = ['wang', 'zhao', 'zhang', 'wang', 'zhao']>>> print(set(t2)){'wang', 'zhang', 'zhao'}
现在有一组数据,这组数据比较凌乱。
data = [1,2,2,2,2,10000,999990,4444,33444,2223,1222,456,34,32]
请你使用你熟悉的编程语言,将上面的数据进行去重后排序。
data = [1,2,2,2,2,10000,999990,4444,33444,2223,1222,456,34,32]# set 集合类型有去重功能,先将数据转换为 set 集合类型data2 = set(data)print(data2)# data2 为集合类型数据,已经去除重复。# 要进行排序,先将data2 转换为list 列表类型的数据data3 = list(data2)# data3 为list 列表,列表排序data3.sort()print(data3)
