Day4—python基础—字典and集合

字典就是键值对应,键唯一,无序。集合用来去重,关系测试,无序。

字典这种数据类型常用的方法有:
1.clear()
print(name.clear())       清除字典中的数据,输出结果为none
2.fromkeys()
print(name.fromkeys(["c","z","p"],100))   创建字典,通过列表的方式指定多个key,并将这些key赋予相同的值
输出结果为:
{‘c‘: 100, ‘z‘: 100, ‘p‘: 100}
3.get()
v = dic[‘k11111‘]
print(v)
v = dic.get(‘k1‘,111111)
print(v)                        根据Key获取值,key不存在时,可以指定默认值(None)
4.pop
name={
    "k1":"v1",
    "k2":"v2"
}
name.pop("k1")              删除,指定删除的key,如果存在,删除,如果key不存在,报错
print(name)
输出结果:
{‘k2‘: ‘v2‘}
5.popitem
dic={
    "k1":"v1",
    "k2":"v2"
}
print(dic.popitem())          Python 字典 popitem() 方法随机返回并删除字典中的一对键和值(一般删除末尾对)。如果字典已经为空,却调用了此方法,就报出KeyError异常
输出结果:
{‘k2‘: ‘v2‘}
6.update
dic = {
    "k1": ‘v1‘,
    "k2": ‘v2‘
}
dic.update({‘k1‘: ‘111111‘})                 更新
print(dic)
运行结果:
{‘k1‘: ‘111111‘, ‘k2‘: ‘v2‘}
字典的for循环
for i in dic.keys():                     输出字典中所有key的值
    print(i)
for i in dic.values():           输出字典中所有value的值
    print(i)
for k,v in dic.items():           输出字典中所有的key对应的value值
    print(k,v)

列表、元组、字典都可以通过切片的方式进行增删改查。
集合的定义方法如下:
name=set("czp") /name=set({1,2,3,4})
print(type(name))
运行结果:
{‘z‘, ‘c‘, ‘p‘} /{9, 10, 3, 5}             打印结果可以看到是元素是无序的
<class ‘set‘>                              使用type()方法打印name的类型为set
通过下面这个例子 进一步说明集合是去重的
name=set("czpcc")
print(name)
运行结果:
{‘c‘, ‘p‘, ‘z‘}
集合的一些基本方法如下所示:

1.add():添加,仅适用于添加单个元素
s = set([3,5,9,10])
s.add("x")     添加一个元素,注意:add方法只能添加单个元素,
print(s)            添加多个元素需要用update方法
运行结果:
{3, 5, 9, 10, ‘x‘}
2.update():更新,适用于添加多个元素
s = set([3,5,9,10])
s.update([1,2])            通过update方法添加多个元素,可以使用[]列表的形式,也可以使用“”,“”这种,的形式隔开添加
print(s)
运行结果:
{1, 2, 3, 5, 9, 10}
3.clear():清空
s = set([3,5,9,10])
s.clear()                           移除集合中的所有元素
4.copy() :深浅copy会在后面的博客中详细说。
5.pop():删除(随机删)
s = set([3,5,9,10])
s.pop()         pop()方法,随机删除集合中的元素,如果集合为空,程序报错
print(s)
运行结果:
{10, 3, 5}
6.remove():删除(指定元素删除)
s = set([3,5,9,10])
s.remove(3)                           指定元素删除,如果为空或者该元素不存在,程序报错
print(s)
运行结果:
{9, 10, 5}

上面提到了,集合的主要功能是去重和关系测试,对于集合的关系测试使用方法如下所示:
1.交集,可以如下两种方式表示
s = set([3,5,9,10])
v = set([3,4,9,11])
print(s&v)
print(s.intersection(v))              求两个集合的交集
运行结果是一样的:
{9, 3}
{9, 3}
2.并集,用如下两种方式表示
s = set([3,5,9,10])
v = set([3,4,9,11])
print(s|v)                            求两个集合的并集
print(s.union(v))
运行结果:
{3, 4, 5, 9, 10, 11}
{3, 4, 5, 9, 10, 11}
3.差集,用如下两种方式表示
s = set([3,5,9,10])
v = set([3,4,9,11])
print(s-v)                             求两个集合的差集
print(s.difference(v))
运行结果如下:
{10, 5}
{10, 5}
另外还有 issubset()-判断子集、issuperset()-判断父级等方法,返回的值为布尔值。

原文地址:https://www.cnblogs.com/yaozhenhua/p/8495349.html

时间: 2024-08-22 13:46:29

Day4—python基础—字典and集合的相关文章

Day4 - Python基础4 迭代器、装饰器、软件开发规范

Python之路,Day4 - Python基础4 (new版) 本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 1.列表生成式,迭代器&生成器 列表生成式 孩子,我现在有个需求,看列表[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],我要求你把列表里的每个值加1,你怎么实现?你可能会想到2种方式 >>> a [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>

Python 之字典与集合

进入python的字典与集合的学习. 先回顾下集合. 在python中,集合用set表示.花括号与set()可以用来创建集合. 还是先创建一个空的集合 不能用s={}来创建一个集合,创建一个空的集合使用set(). 集合是无序的,不重复的,所以在创建集合的时候重复的元素会被去掉. 集合的基本运算: 交    & 并    | 差    - 对称差 ^ 举个例子: 设集合s1={1,2,3,4},集合s2={2,3,5} 则: >>> s1={1,2,3,4} >>&g

python基础知识(集合)

在python中集合set是一种基本数据的类型,它有可变集合(set())和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法,接下来将介绍结合的相关知识. 一.集合特点 1.类似字典dict,但是只有key却没有value值: 2.集合的存储没有固定的顺序 3.由于集合里面的元素不能重复所以集合一般用来去重 二.集合的定义 常见的有两种方法 1.直接定义类似字典但是没有value值,例如 set1={"openatck&qu

3.python基础补充(集合,collection系列,深浅拷贝)

一.集合 1.集合(set): 把不同的元素组成一起形成集合,是python基本的数据类型.集合元素(set elements):组成集合的成员 python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和sysmmetric difference(对称差集)等数学运算. sets 支持 x in set, len(set),和 for x in set.作

Python的字典和集合

字典 字典是Python种唯一的映射类型.映射类型中的数据是无序排列的.在映射类型种,我们使用键直接‘映射’到值,这就是为什么叫映射类型的原因,映射类型通常被称做哈希表,因为字典对象就是哈希类型的.哈希表的算法是获取键,对键执行一个叫做哈希函数的操作,并根据计算的结果,选择在数据结构的某个地址中来存储值.任何一个值存储的地址取决于它的键,因此,哈希表中的值是没有顺序的.哈希表有一个很好的性能,因为用键查询相当快. 字典的基本操作 #字典的赋值 >>> dict1 = {} >>

python基础-字典-列表-元组考试-day5

1.请用代码实现:利用下划线将列表的每一个元素拼接成字符串,li=['alex','eric','rain'] 1 li=['alex','eric','rain'] 2 v="_".join(li) 3 print(v) 执行结果: 1 alex_eric_rain 2.查找列表中元素,移除每个元素的空格,并查找以a或A开头并且以c结尾的所有元素.li=["alec","aric","Alex","Tony&quo

Python中字典和集合

映射类型: 表示一个任意对象的集合,且可以通过另一个几乎是任意键值的集合进行索引 与序列不同,映射是无序的,通过键进行索引 任何不可变对象都可用作字典的键,如字符串.数字.元组等 包含可变对象的列表.字典和元组不能用作键 引用不存在的键会引发KeyError异常 1)字典 dict { } 空字典 { key1:value1,key2:value2,... } 字典在其它编程语言中又称作关联数组或散列表: 通过键实现元素存取:无序集合:可变类型容器,长度可变,异构,嵌套 支持的操作: len(D

Python基础之set集合与函数

set集合 集合是一个无序且不重复的元素组合,以大括号表示.使用详情: >>> b=set(a) >>> type(b) <class 'set'> >>> print(b) {'hello', 1, 3, 'cc', 'dx'} >>> print(b) {'hello', 1, 3, 'cc', 'dx'} >>> b.add('world') #添加某元素,参数为元素本身 >>>

Python中字典和集合的用法

本人开始学习python 希望能够慢慢的记录下去 写下来只是为了害怕自己忘记. python中的字典和其他语言一样 也是key-value的形式  利用空间换时间 可以进行快速的查找 key 是唯一的 不可变的类型 比如 str int 等  不能是list之类的可变类型 1.定义 定义一个字典 格式{key:value,key:value} a = {'a':80,'b':90,1:'a',2:[1,2]} print(a) 如果是定义如下 a = {'a':90,[1,2,3]:10} 则会