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]
# 在第一值的地方添加元素4
lists.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)