Python集合与字典数据类型实例分析(python,开发技术)

时间:2024-05-05 12:27:37 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

    Python%E9%9B%86%E5%90%88%E4%B8%8E%E5%AD%97%E5%85%B8%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B%E5%AE%9E%E4%BE%8B%E5%88%86%E6%9E%90

集合数据类型是没有顺序的简单对象的聚集,并且集合中的元素不会重复。Python中的集合包括可变集合对象(set)与不可变集合对象(frozenset)。字典是具有键值对的数据结构。每个键不能重复,并且可以根据字典的键查询到他的值。这两位好兄弟外观组成都是使用{}进行包裹。并且底层原理有一定的相通性。他们的底层实现一般都是用了哈希表。

集合数据类型分为可变集(set)与不可变集(frozenset)两种。

集合中的元素不可以重复,并且无序。(因为对象存在集合内是以哈希对象的形式存储的)

集合内放置的应该是不可变对象(数值型数据类型、字符串元组、不可变集合)

空集合的的表示方法是set()。{}是空字典的表示方式。

可以使用in /not in判断元素是否在集合内。

集合的使用方式与中学时代学到的集合有些相似。也就是说数学上的集合交、并、补、差运算可以运用到Python集合上。表示方式如下

假设集合有A={1,2,3}、B={2,3,4}、C={3,4,5}、D={1,2,3,4}四个 交:

A|B|C={3}

并:

A&B={1,2,3,4}

补:

A^D={4}

A-B={1}

可以使用这些方法进行是否有相同元素,是否具有包含关系的判断

前面讲列表的时候讲到了列表推导式,可以直接生成一个自己的想要的列表。今天咱就讲一下集合列表推导式

推导式语法:

{变量通式 for i in 序列 [判断条件]}

例如下式求偶数的平方

可变集合用set进行创建(可变集合底层依旧是哈希表,所以只能存储不可变对象) print(set([1,2,3]))

创建的对象有一系列的方法。add(x)、remove(x)、discard(x)、pop()、clear() 上面几个函数分别对应的增加元素、移除元素(不存在抛异常)、移除元素、随机弹出元素、清空集合

实际操作代码:

字典是键和值的映射关系,所以有时也称为映射数据类型。字典的键是哈希数据类型(不可变),值是任意类型,并且在一个字典内每种键只能有一个,值可以重复可以任意取。可以通过键获取到相应的值。

键值对的一般形式就是 键:值

所以字典的一般形式就是{键1:值,键2:值,键3:值…}

创建字典可以直接使用字面量{键1:值,键2:值,键3:值…},也可以使用dict进行创建。

dict支持字典转字典、支持序列转字典。

字典使用的时候可以单独的获取键、值与【键、值】列表

方式是:

dic.keys() #获取键列表

d.values() #获取值列表

d.items() #获取元组形式的键值列表

字典可以使用in / not in判断字典内是否含有某键。

字典对象有一系列方法:

clear() #清空元素

copy() #复制字典

get(k) #根据键获取值

pop(k) #如果键存在则删除并返回值,不存在抛出异常

pop(k,v)#如果键存在则删除并返回值,不存在返回V

setdefault(k,v) #如果k键存在则返回其值,如果不存在添加k键并赋值None

update() #传入字典或键值对更新操作

字典推导式与列表推导式、集合推导式使用方法类似,只不过他有两个值 {k:v for k in …for v in …}

本文:Python集合与字典数据类型实例分析的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:C#开发WinForm中怎么根据条件改变DataGridView行颜色下一篇:

5 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18