前言
讲讲python的数据结构
提示:以下是本篇文章正文内容,下面案例可供参考
一、列表 list
类似于Java的list集合,python的列表区别于字符串和元组,其中的元素是可以修改的,并占用一段连续的存储单元
列表使用[]
来定义 , list = ["a","b"]
1.增
增可以分为在尾部追加和指定位置插入
代码如下(示例):
namelist.append("xiaoj")
namelist.insert(0,"yx")
2.删
代码如下(示例):
namelist.remove("小张")
print(namelist.pop(2)) # 移出指定位置元素并将其返回
del namelist[0] # 依据索引值删除元素
3.查
返回 x 在列表中出现的次数,count(x)
返回列表中第一个值为 x 的元素的索引 ,index(x)
二、元组 tuple
元组由若干逗号分隔的值组成,但是在只有一个元素的情况下不加 ,
不能表示为元组
#元组
tup1 = ()
print(type(tup1))
tup2 = (2)
print(type(tup2)) #int类型的数字
tup3 = (2,) #加上,变成元组
print(type(tup3))
1.增
代码如下(示例):
tup = tup3 + tup4
print(tup)
加号 +
能将两个元组拼接在一起
2.删
代码如下(示例):
del tup3
从内存中删除整个元组
3.改
元组中的数据是不能改变的,只能读取,但是元组中可以存储可变元素
三、字典 dict
字典类似于Java中的Map
集合,通过键值对存储对象
1.增
代码如下(示例):
info = {
"name":"xiaoj","age":18}
newId = input("请输入id")
info["id"] = newId # 设置新键
print(info["id"])
2.删
删除分为仅清空数据 (clear()
) 和从内存中删除元素 del
代码如下(示例):
#2.删 del / clear(清除)
del info["id"]
print(info["id"]) # <<< 报错
info.clear()
print(info) # <<< 输出{}
4.查
可以通过get()
方法设置默认值
代码如下(示例):
d = {
'key1':1,'key2':2}
print(d['key1']) #直接访问
print(d.get('key3')) #get访问,默认返回None
print(d.get('key3',4)) #get访问可以设置默认值
四、集合 set
集合是一个无序不重复元素的集。基本功能包括关系测试和消除重复元素。
代码如下(示例):
unit = {
'小张', '小李', '小张', '小张', '小李', 'xiaoj'}
print(unit)
<<< {
'小张', '小李', 'xiaoj'}
同时,集合元素也支持集合运算: - | & ^
这四个运算
a = set('ahcbusda')
b = set('abchufvv')
print(a) #去重
print(b)
print(a-b) #返回在a中但不在b中的元素
print(a^b) #返回a b两集合的对称差
print(a&b) #a b取交集
print(a|b) #a b取并集
#结果
<<< {
'b', 'd', 'h', 'a', 'u', 's', 'c'}
{
'b', 'f', 'h', 'a', 'u', 'v', 'c'}
{
's', 'd'}
{
'f', 'd', 'v', 's'}
{
'b', 'h', 'a', 'u', 'c'}
{
'b', 'f', 'd', 'h', 'a', 'u', 'v', 's', 'c'}