第三章笔记

1、函数dict()从其他映射或键值对序列来创建字典

>>>items = [('name','Gumby'),('age',42),('addr','China')]
>>>d = dict(items)
>>>d
{'name': 'Gumby', 'age': 42, 'addr': 'China'}

2、字典部分操作类似序列,len(d) , d[k] , d[k] = v(不存在就创建) , del[k] , k in d
方法浅复制copy()

>>> x = {'X':'x','Y':'y','list':['a','b','c']}
>>> y = x.copy()
>>> y['X'] = 'c'    #替换副本中的值时,原件不收影响
>>> y
{'X': 'c', 'Y': 'y', 'list': ['a', 'b', 'c']}
>>> y['list'].remove('a')   #但是,修改副本中的值时,原件也发生变化(指向的列表发生变化,因为列表没有被复制)
>>> y
{'X': 'c', 'Y': 'y', 'list': ['b', 'c']}
>>> x
{'X': 'x', 'Y': 'y', 'list': ['b', 'c']}

方法深复制deepcopy()

>>> from copy import deepcopy
>>> y = deepcopy(x)   #完全独立,连列表指向也独立
>>> y['list'].remove('a')
>>> y
{'X': 'x', 'Y': 'y', 'list': ['b', 'c']}
>>> x
{'X': 'x', 'Y': 'y', 'list': ['a', 'b', 'c']}

方法fromkeys()创建一个新字典,包含指定的键,默认值为None,也可以修改默认值

>>> z = {}
>>> z.fromkeys(['name','age'])   #默认状态
{'name': None, 'age': None}
>>>z.fromkeys(['addr','phone'],'No')   #指定值
{'addr': 'No', 'phone': 'No'}
>>> z
{}

方法get()和方法setdefault(),前者访问字典键不引发KeyError,后者访问字典键,若不存在,就创建

#方法get()
>>> q = {'X':'x','Y':'y','C':'c'}
>>> q.get('x')    #没反应
>>> print(q.get('x'))   #默认返回None
None
>>> print(q.get('x','Noob'))   #更改默认值
Noob
>>> print(q.get('X'))
x
#方法setfault
>>> q.setdefault('x')
>>> q
{'X': 'x', 'Y': 'y', 'C': 'c', 'x': None}

方法items()返回一个包含所有字典项的列表,每个元素以(key,value)形式存在

>>> q.items()
dict_items([('X', 'x'), ('Y', 'y'), ('C', 'c'), ('x', None)])

方法pop()用于获取指定键相关联的值,并将该键值对从字典中删除

>>> q.pop('x')
>>> q
{'X': 'x', 'Y': 'y', 'C': 'c'}

方法popitem()类似于列表的pop(),但是popitem()是随机地弹出一个字典项(字典无序,没有最后一个的说法)

>>> q.popitem()
('C', 'c')
>>> q
{'X': 'x', 'Y': 'y'}

方法update()用一个字典的项来更新另一个字典

>>> z = {'X':'z'}
>>> q.update(z)
>>> q
{'X': 'z', 'Y': 'y'}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值