如何通过Python字典fromkeys()方法实现键值初始化的代码示例?

2026-05-22 05:081阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计352个文字,预计阅读时间需要2分钟。

如何通过Python字典fromkeys()方法实现键值初始化的代码示例?

`fromkeys()` 方法类似于列表的浅拷贝。首先使用该方法创建一个字典 `dict_`,然后尝试向某个键添加值时,发现键对应的值是列表,但添加操作似乎没有生效。

输出结果:OUT: {'a': [], 'b': [], 'c': [], 'd': []}

fromkeys()方法类似于列表的浅拷贝

首先用该方法创建一个字典

dict_ = dict.fromkeys(('a','b','c','d'),[])
print(dict_)

OUT:

{'a': [], 'b': [], 'c': [], 'd': []}

当我向某个key添加value时,问题出现了

dict_['b'].append("!!!")
print(dict_)

OUT:

{'a': ['!!!'], 'b': ['!!!'], 'c': ['!!!'], 'd': ['!!!']}

所有的key都指向同一个value,就好比很多个标签都指向同一个物品

如何通过Python字典fromkeys()方法实现键值初始化的代码示例?

和列表浅拷贝类似

a = ["这","是","啥"]
b = a #浅拷贝
c = a[:] #深拷贝
print("a: ",a)
print("b: ",b)
print("c: ",c)

OUT:

a: ['这', '是', '啥']
b: ['这', '是', '啥']
c: ['这', '是', '啥']

del a[1] #删除 a 的第二个元素
print("a: ",a)
print("b: ",b)
print("c: ",c)

OUT:

a: ['这', '啥']
b: ['这', '啥']
c: ['这', '是', '啥']

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

本文共计352个文字,预计阅读时间需要2分钟。

如何通过Python字典fromkeys()方法实现键值初始化的代码示例?

`fromkeys()` 方法类似于列表的浅拷贝。首先使用该方法创建一个字典 `dict_`,然后尝试向某个键添加值时,发现键对应的值是列表,但添加操作似乎没有生效。

输出结果:OUT: {'a': [], 'b': [], 'c': [], 'd': []}

fromkeys()方法类似于列表的浅拷贝

首先用该方法创建一个字典

dict_ = dict.fromkeys(('a','b','c','d'),[])
print(dict_)

OUT:

{'a': [], 'b': [], 'c': [], 'd': []}

当我向某个key添加value时,问题出现了

dict_['b'].append("!!!")
print(dict_)

OUT:

{'a': ['!!!'], 'b': ['!!!'], 'c': ['!!!'], 'd': ['!!!']}

所有的key都指向同一个value,就好比很多个标签都指向同一个物品

如何通过Python字典fromkeys()方法实现键值初始化的代码示例?

和列表浅拷贝类似

a = ["这","是","啥"]
b = a #浅拷贝
c = a[:] #深拷贝
print("a: ",a)
print("b: ",b)
print("c: ",c)

OUT:

a: ['这', '是', '啥']
b: ['这', '是', '啥']
c: ['这', '是', '啥']

del a[1] #删除 a 的第二个元素
print("a: ",a)
print("b: ",b)
print("c: ",c)

OUT:

a: ['这', '啥']
b: ['这', '啥']
c: ['这', '是', '啥']

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。