#19.5.15 python 列表 元组 字典 集合

Python中的数据结构
参考:https://www.cnblogs.com/myworld7/p/8449614.html


-列表list: 格式:list=[‘1’,‘2’ ]

https://www.runoob.com/python/python-lists.html

  1. 列表中的每个元素都可变的。list增删查改

_>意味着可以对每个元素进行修改和删除。

  1. 列表是有序的,每个元素的位置是确定的,可以用索引去访问每个元素。
  2. 列表中的元素可以是Python中的任何对象。

[1,2,3]+[4,5,6] = [1,2,3,4,5,6]

list.append 末尾添加新元素

list.count 某个元素在列表中出现的次数

list.insert(index, obj)方法

index – 对象 obj 需要插入的索引位置。
obj – 要插入列表中的对象

正反序排列:
正反序排列可以为任意对象就意味着元素可以是字符串、整数、元组、也可以是list等Python中的对象。

可以为任意对象就意味着元素可以是字符串、整数、元组、也可以是list等Python中的对象。

list函数

list(“Hello,world”)
[‘H’, ‘e’, ‘l’, ‘l’, ‘o’, ‘,’ , ‘w’, ‘o’, ‘r’, ‘l’, ‘d’]

可以通过list将序列创建为列表。


-元组tupple 格式:tuple=(‘1’,‘2’ )
元组可以理解为一个固定的列表,一旦初始化其中的元素便不可修改(包括删除),只能对元素进行查询。

例子:

test=(‘a’,‘b’,[‘A’,‘B’])
print(test)
(‘a’, ‘b’, [‘A’, ‘B’])
test[2][0]=‘x’
test[2][1]=‘y’
test
(‘a’, ‘b’, [‘x’, ‘y’])

这里看似元素中的元素改变了,可是仔细分析下,元组中的第三个元素是一个列表。

代码3.4行改变的是列表中的值,元组所指的这个元素列表并没有改变,需要注意这点!

可以通过tuple将序列转换为元组,用法和list一样 !

-字典 dict={‘Lu’:‘ccc’}

字典这个概念就是基于现实生活中的字典原型,生活中的使用名称-内容对数据进行构建,Python中使用键(key)-值(value)存储,也就是C++中的map。

dict的显著特征:

  1. 字典中的数据必须以键值对的形式出现
  2. 键不可重复,值可重复
  3. 键若重复字典中只会记该键对应的最后一个值

字典中键(key)是不可变的,为不可变对象,不能进行修改;而值(value)是可以修改的,可以是任何对象。
在dict中是根据key来计算value的存储位置,如果每次计算相同的key得出的结果不同,那dict内部就完全混乱了。

dict的增删查改

  1. 可以采用“键值对”的方法和update()方法向字典中添加元素
  2. 删除可以使用关键字del以及pop()方法

查询采用如查询列表元素的索引方式,使用键作为索引查找值

若元素不存在会报错,在进行查找前,可以通过以下两种方法判断key是否存在:

① 成员资格运算符–in运算符

② get()方法(值不存在时返回NULL,也可指定返回的值)

对值得修改可以采用直接覆盖原值的方法

dict中的元素是无序的,不可以采用分片。

集合set :格式 :test=set([1,2,3])

集合中每个元素都是无序的、不重复的任意对象。
可以通过集合去判断数据的从属关系,也可以通过集合把数据结构中重复的元素减掉。集合可做集合运算,可添加和删除元素。

创建集合时需要用list作为输入集合,可通过add()方法增加元素,remove()方法删除元素

test=set([1,2,3])
test
{1, 2, 3}
test.add(3)
test
{1, 2, 3}
test.add(6)
test
{1, 2, 3, 6}
test.remove(3)
test
{1, 2, 6}

集合运算
Python中的集合也可以进行集合的之间的交&、并| 等运算

s1 = set([1,2])
s2=set([2,3])
s1 & s2 # s1与s2
{2}
s1 | s2 # s1与s2进行或运算
{1, 2, 3}


总结:
list=[’’,’’]增删查改;有序
tuple=(’’,’’)不变;有序
dict={’’:’’}键值形式;增删查改;无序
s1=set[(1,2)] 类比数学集合

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值