码迷,mamicode.com
首页 > 其他好文 > 详细

fromkeys的使用

时间:2018-08-01 12:06:49      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:key   dict   from   pytho   出现   pen   []   png   alt   

下面有两个字典dic2,dic3,一个是通过fromkeys生成,一个是手动创建。

dic2 = dict.fromkeys([‘k1‘, ‘k2‘, ‘k3‘, ‘k4‘], [])
dic3 = {‘k3‘: [], ‘k2‘: [], ‘k1‘: [], ‘k4‘: []}
# 最初两个字典是key value 是一样的
print(dic2)
print(dic3)
print("****************")
# 对字典的value增加一个值
dic3[‘k3‘].append(‘123‘)
# 对fromkeys 的字典也增加相同的value
dic2[‘k3‘].append(‘123‘)
print(dic3)
print(dic2)

  技术分享图片

虽然说都对两个相同的字典,更新相同的value,但是通过fromkeys创建的字典却更新了所有key的值

这是为什么呢?

原因是通过fromkeys创建的字典,其value值对应的是同一个内存地址,更新了其中一个value的值,内存地址值被更新

技术分享图片

当默认的值不是列表,而是字符串时,不会出现这种情况,只会更新要更新的value值

fromkeys的使用

标签:key   dict   from   pytho   出现   pen   []   png   alt   

原文地址:https://www.cnblogs.com/duanpengpeng/p/9399269.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!