少说话多写代码之Python学习013——字典的方法02

栏目: Python · 发布时间: 6年前

内容简介:copy方法返回一个具有相同键值对的新字典,该方法实现的是浅复制,因为值是相同的。输出由上面可以看出,当在副本中替换值的时候,原始字典不受影响,但是如果修改了某个值,原始的字典也会改变,因为同样的值也存储在原字典中。因此我们使用深度复制。

copy方法返回一个具有相同键值对的新字典,该方法实现的是浅复制,因为值是相同的。

x={'username':'张无忌','kunfu':['九阳神功','太极','乾坤大挪移']}
y=x.copy()
print(y)
y['username']='张三丰'
y['kunfu'].remove('九阳神功')
y['kunfu'].remove('乾坤大挪移')
print(y)

输出

{'username': '张无忌', 'kunfu': ['九阳神功', '太极', '乾坤大挪移']}
{'username': '张三丰', 'kunfu': ['太极']}

由上面可以看出,当在副本中替换值的时候,原始字典不受影响,但是如果修改了某个值,原始的字典也会改变,因为同样的值也存储在原字典中。因此我们使用深度复制。

from copy import deepcopy
d={}
d['names']=['乔峰','虚竹','段誉']
c = d.copy()
dc = deepcopy(d)

d['names'].append('郭靖')
print(c)
print(dc)

输出

{'names': ['乔峰', '虚竹', '段誉', '郭靖']}
{'names': ['乔峰', '虚竹', '段誉']}

我们看到,虽然改变了副本,但是原字符串不会被改变。

工程文件下载: https://download.csdn.net/download/yysyangyangyangshan/10694425


以上所述就是小编给大家介绍的《少说话多写代码之Python学习013——字典的方法02》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

YC创业营: 硅谷顶级创业孵化器如何改变世界

YC创业营: 硅谷顶级创业孵化器如何改变世界

兰德尔·斯特罗斯 (Randall Stross) / 苏健 / 浙江人民出版社 / 2014-8-1 / CNY 52.90

在互联网创业成本日益降低、融资却越来越难的今天,硅谷的Y Combinator因何成为全世界创业者趋之若鹜的创业圣地?为什么25岁左右的青年最适合创业?创业者如何才能在遴选面试中脱颖而出?为什么YC特别看好那些主要由黑客组成的创业团队? YC真的歧视女性吗?如何想出能够赢得投资的新点子?创业者应该如何寻找联合创始人? 获准进入Y Combinator及其创业公司全程跟踪批量投资项目的第一人,......一起来看看 《YC创业营: 硅谷顶级创业孵化器如何改变世界》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具