python数据的容器

python数据的容器,第1张

python数据的容器

目录

列表(list)

元组(turple)

字典(dictiontary)

集合(set)


列表(list)

定义:列表(list)是一个有序的序列结构,序列中的元素可以是不同的数据类型以及四个python容器,list使用的是[ ]

特点:可以包含多种数据类型,可以有重复的元素,有序(可以通过索引找到对应的元素),里面的元素可以修改

list1=[1,2,3,4,1,2,3,"hello",True,False,1.11,[1,2,3],(1,24,2),{"key":"value","key1":"value"}]
print(list1,type(list1))

列表可以进行一系列序列 *** 作,如索引、 切片、加、乘和检查成员等

list2=[1,2,3,4,1,2,3,"hello",True,False,1.11]

1.通过下标(索引寻找值)

print(list1[7])

 

2.修改元素的内容

append() 方法:在列表末尾添加增加元素

list2.append("world")
print(list2)

insert() :在指定索引处插入元素

list2.insert(0,"A")
print(list2)

直接对元素赋值,修改内容

list2[6]="a"
print(list2)

  pop()方法:删除列表末尾的元素

list2.pop()
print(list2)

 pop中也可以传入索引

list2.pop(7)
print(list2)

可以看到索引是7的“hello“ 被删除了

 

remove():根据值移除元素,如果有值相同的只删除前面的

list2.remove(1)
print(list2)

 del :删除一个元素

del list2[0]
print(list2)

3.切片

切片 *** 作需要提供起始索引位置和最后索引位置,然后用冒号 : 将两者分开 

步长默认为1,也可以不写

print(list2[5:6:1])
print(list2[5,6])

 

4.sort() 排序,排序要求列表中只有一种类型的元素

还可以在sort()中写reverse=True,这样就是逆序

list3=[4,3,1,15,67,5,16,2,3]
list3.sort()
print(list3)
list3.sort(reverse=True)
print(list3)

5.查找元素的索引,如果有多个值对应返回最前面的

list3=[4,3,1,15,67,5,16,2,3]
print(list3.index(1))

6.extend 向一个列表中插入其他的列表

lista=[1,2,3,4]
listb=['a','b','c','d']
lista.extend(listb)
print(lista)

元组(turple)

元组(tuple)数据结构与列表类似,其中元素可以有不同的类型。但是元组中的元素是不可变的, 即一旦初始化之后,就不能够再做修改,并且是有序的,可以通过索引取到数据。

使用()存储元素

元组自身的方法就两个,index()和count(),

count统计元素在元组中出现的次数

index返回元素在元组中首次出现的索引

tuple1=(1,2,3,4,1,2,3,"hello",[1,2,3])
print(tuple1.count(1))
print(tuple1.index(2))

在只有一个元素的时,需要加上一个逗号表示他是元组,不然会认定是一个变量

tuple2=(2)
print(tuple2,type(tuple2))
tuple2=(2,)
print(tuple2,type(tuple2))

 

字典(dictiontary)

字典的创建使用大括号 {} 包含键值对,并用冒号 : 分隔键和值,形成 键:值 对

字典中的数据元素是无序的 ,不可以通过索引这种方法获取元素,只能通过key去获取value。不同键所对应的值可以相同,但是字典中的键必须是唯一的,key中的1和0,与True和False重复了,所以值会覆盖

#字典的key可以是任意不可变的类型(列表除外)
dict1={
    'k1':'v1',
    'k2':'v2',
    1:'1',
    0:'0',
    True:'true',
    False:'false',
    'k3':[1,2,3],
    'k4':{'k5':{'k6':'vvvv'}}
}

如果不太确定字典中有哪些键或者值,我们可以使用 keys() 方法或者values()方法,给我们返回了所有的键和值

print(dict1.keys())
print(dict1.values())
print(dict1.items())

通过键去寻找键值的方法get():

获得key为‘k1’的value

list.get('k1')

 在有些情况下,我们需要取出字典中的键值对用于下一步的分析,此时可以使 用 items() 方法,该方法将返回所有键值对,并将其保存在一个元组列表(列表中的元素为元组)中

我们可以通过 in 判断是否存在某个键,其语法跟在列表和元组中判断是否存在某个值是相同的

print('k1' in dict1)

 

字典的删减有三种方法 使用 del 函数对单一元素或者整个字典进行删除 使用 pop() 方法删除单一元素 使用 clear() 方法清空词典的所有元素

del dict1['k1']

dict.pop('k1')

dict.clear()
集合(set)

集合(set)是一种无序集,里面会自动去重,不可以通过索引这种方法获取元素,你每一次print出来的顺序都可能是不同的。集合也可以进行数学集合运算,如并、交、差以及对称差等。

#集合
set1={'red','green','blue'}
set2={'red','yello'}
set3={'glod','silver','crystal'}

#并集
print(set1|set2|set3)
#差集
print(set1-set2)
#交集
print(set1&set2)
#异或
print(set1^set2)

添加元素的方法add()

set1.add("white")

删除元素的方式

remove():根据值移除元素,如果有值相同的只删除前面的

clear():直接清空

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5665960.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存