python从入门到精通-新手学习笔记 第六章:字典与集合

1.字典(关联数组或散列表):可变序列,与列表类似。不过他是无序的可变序列,保存值是以“键-值对”的形式存放的。
2.python中的字典相当于Java或者c++中的Map对象。
3.字典主要特征:

1.通过键而不是通过索引来读取
2.字典是任意对象的无序集合
3.字典是可变的,并且可以任意嵌套。
4.字典的键必须唯一
5.字典的键必须不可变

4.字典的创建与删除
语法格式:dictionary={‘key1’:‘value1’…‘keyn’:‘valuen’}
5.创建字典的方法:
(1).通过映射函数创建字典:dictionary=dict(zip(list1,list2))
zip()函数用于将多个列表与元祖对应位置的元素组合为元组,并返回包含这些内容的zip对象。

在这里插入代码片:
>>> name={'张丽丽','宋可可'}
>>> sign={'双鱼座','水瓶座'}
>>> dictionary=dict(zip(name,sign))
>>> print(dictionary)
{'宋可可': '水瓶座', '张丽丽': '双鱼座'}
>>> 

(2).通过给定的键-值对创建字典
dictionary=dict(key1=value1,…,keyn=valuen)

在这里插入代码片:
>>> dictionary=dict(张丽丽='水瓶座',冷呵呵='双子座')
>>> print(dictionary)
{'张丽丽': '水瓶座', '冷呵呵': '双子座'}
>>> 

在python中,还可以用dict.fromkeys()方法创建值为空的字典。
dictionary=dict.formkeys(list1)

在这里插入代码片:
>>> name_list=['张三','李四','王五']
>>> dictionary=dict.fromkeys(name_list)
>>> print(dictionary)
{'张三': None, '李四': None, '王五': None}
>>> 

删除字典:del dictionary
删除字典中的全部元素:dictionary.clear()

6.访问字典

如果指定的键不存在,抛出以下异常
>>> print(dictionary['冷一人'])
Traceback (most recent call last):
  File "<pyshell#11>", line 1, in <module>
    print(dictionary['冷一人'])
KeyError: '冷一人'
>>> 
>>> print("冷依然的星座是:",dictionary['冷依然'] if '冷依然' in dictionary else '我的字典里没有此人')
冷依然的星座是: 我的字典里没有此人
>>> 

在python中推荐的方法是使用字典对象的get()方法获取指定键的值。语法格式:dictionary.get(key[,default])

7.遍历字典
使用字典对象的items()方法可以获得字典的’键-值对‘列表
语法格式:dictionary.items()

8.添加字典元素
dictionary[key]=value
9.字典推导式可以快速生成一个字典,表现形式与列表推导式相似。

集合
1.直接用{}创建
2.用set()函数创建
setname=set(iteration)

>>> set1=set("命运给予我们的不是失望之酒,而是机会之杯。")
>>> print(set1)
{'酒', '我', '运', ',', '而', '。', '是', '失', '给', '望', '们', '机', '不', '命', '的', '会', '杯', '之', '予'}
>>> 

在python中,创建集合时推荐使用set()函数。
3.向集合中添加元素
setname.add(element)
4.从集合中删除元素
在python中可以使用del删除整个集合,也可以通过集合的pop()(删除一个元素)方法或者remove()(移除指定元素)方法删除一个元素,或者使用集合对象的clear() 方法清除集合,使之变成空集合。
5. 集合的交集(&)、并集(|)和差集(-)运算

在这里插入代码片:
>>> python=set(['依依','香香','萌萌','轩轩'])
>>> c=set(['依依','萌萌'])
>>> print('选择python语言的学生有:',python)
选择python语言的学生有: {'香香', '依依', '萌萌', '轩轩'}
>>> print('选择c语言的学生有:',c)
选择c语言的学生有: {'依依', '萌萌'}
>>> print('交集运算',python&c)
交集运算 {'依依', '萌萌'}
>>> print('并集运算',python | c)
并集运算 {'萌萌', '轩轩', '香香', '依依'}
>>> print('差集运算',python-c)
差集运算 {'香香', '轩轩'}
>>> 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值