Python基础刻意练习:字典与集合

task6

一.字典(dictionary)

字典和列表类似,也是可变序列。与列表不同的是,它是无序的可变序列,保存的内容是以“键一值对”的形式存放。键是唯一的,而值可以有多个。字典在定义一个包含多个命名字段的对象时很有用。

1.字典的创建

字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中
语法格式:d={key1 : value1, key2 : value2 }
eg:

ax={'校名:','主校区:':'北京','分校区:':'保定'}
print(ax)

在这里插入图片描述
法一:通过映射函数创建字典
语法格式:d=dict(zip(list1,list2))
#zip()函数用来将多个列表或元组对应位置的元素组合为元组,并返回包含这些内容的zip对象。如果想得到元组,可将zip的对象使用tuple()函数转换成元组;如果想得到列表,则可以使用list()函数将其转换成列表。
list1:一个列表,用于指定要生成字典的键。
list2:一个列表,用于指定要生成字典的值。
如果list1和list2的长度不同,则与最短的列表长度相同。
eg:

name=["小红","小蓝","小芳"]#作为键的列表
age=['16','18','19']#作为值的列表
d=dict(zip(name,age))#转换为字典
print(d)

在这里插入图片描述
法二:通过给定的“键——值对”创建字典
语法格式:d=dict(key1=value1,key2=value2,…,keyn=valuen)
#key1,key2,…,keyn表示元素的键,必须是唯一的,并且不可变,可以是字符串、数字或元组。
value1,value2,…valuen表示元素的值,可以是任何数据类型,不是必须唯一的。
eg:

d=dict(小红='16岁',小蓝='18岁',小芳='19岁')
print(d)

在这里插入图片描述

2.字典的访问

在Python中,如果想将字典的内容输出可以直接使用print(),但在使用字典时,很少需要直接输出它的全部内容,一般需要根据指定的键得到相应的结果。要想实现这一想法,可以通过下标的方式实现。与列表和元组不同的是,这里的下标不是索引号,而是键。
eg:

d={"小红":'16岁',"小蓝":'18岁',"小芳":'19岁'}
print(a['小蓝'])

在这里插入图片描述
但是在使用该方法时,如果指定的键不存在就会出现异常
eg:
在这里插入图片描述
在实际开发的过程中其实大部分情况下我们是无法知晓当前存在什么键的,这时就需要我们在其中设置一个默认值使得不会出现异常情况。
解决方法是利用if语句对不存在对于键的情况进行处理。
eg:

d={"小红":'16岁',"小蓝":'18岁',"小芳":'19岁'}
print('小蓝':d['小蓝'] if ' ' in d else '此字典中查无此人')
3.修改字典

向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值。
语法格式:d[key]=value
eg:

d=dict((('小红'.'16岁'),('小蓝','18岁'),('小芳','19岁')))
d['小明']='20岁'
print(d)

在这里插入图片描述

4.删除字典元素

能删单一的元素也能清空字典,清空只需一项操作。显示删除一个字典用del命令。
eg:

d={'小红':'16岁','小蓝':'18岁','小芳':'19岁'}
del d['小红']#仅删除‘小红’对应条目
d.clear()#清空字典内的全部条目
del d #删除字典

在这里插入图片描述

5.字典内置函数与方法

Python字典包含了以下内置函数:在这里插入图片描述
Python字典包含了以下内置方法:
在这里插入图片描述

二.集合

定义:
①.不同元素组成
②.无序
③.集合中的元素必须是不可变类型

1.集合的创建

eg:a={1,2,3,4,5}

(一)使用set(value)工厂函数,把列表或元组转换成集合

eg:
在这里插入图片描述

(二)去掉列表中重复的元素

eg:
在这里插入图片描述

(三)定义可变集合

eg:

a=set("greatful")
print(a)

在这里插入图片描述

(四)定义不可变集合

返回一个冻结的集合,冻结后集合不能再添加或删除任何元素
eg:

a1=set("hill")
a1
a2=frozenset(a1)
a2
(五)集合的内置方法

①set.add(elmnt)用于给集合添加元素,如果添加的元素在集合中已存在,则不执行任何操作。
eg:

a={"小红","小蓝","小芳"}
a.add("小明")
print(a)
a.add("小蓝")
print(a)

在这里插入图片描述
②set.remove(item)用于移除集合中的指定元素。
eg:

a={"小红","小蓝","小芳"}
a.remove("小红")
print(a)

在这里插入图片描述③set.update(set)用于修改当前集合,可以添加新的元素或集合到当前集合中,如果添加的元素在集合中已存在,则该元素只会出现一次,重复的会忽略。
eg:

a={"小红","小蓝","小芳"}
b={"小张","小王","小芳"}
a.update(b)
print(a)

在这里插入图片描述
除以上几种内置方法外还有很多,在此就不一一列举了。

以上就是我整理的task5的全部内容了,感谢你的浏览。
参考文献:
https://www.runoob.com/python/python-dictionary.html
https://www.runoob.com/python3/python3-tutorial.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值