其实我经常好奇一件事, 为什么 Python 得 dict 没有 set 方法, 有人知道什么历史原因吗

查看 44|回复 6
作者:iorilu   
经常操作 dict
d = {}
d['name'] ='tom'
d['age'] = 30
这样得代码, 其实我很想有一个 set 方法, 我觉得这样
比上面写法更好
而且 dict 明明有 get 方法, 有 set 很合理
而且还有个 setdefault 方法, 而且这个方法很容易混淆, 因为这个方法
主要作用是获取值, 并不是设置值得, 这个名字一看都不清楚什么意思
总的来说, 我认为应该有 set 方法
但 python 一直没有, 而且既然没有, 后面加上应该不会有任何不兼容
当然这么明显得事情 python 开发组不可能不知道, 那么到底是什么原因
不能放一个 set 方法呢
julyclyde   
set 是 python 语言的关键词
lucasj   
我也觉得很合理。
cmdOptionKana   
python 语言本身的设计理念就是想一出是一出,很自由,没啥特殊原因,纯粹当时设计者拍脑袋觉得这样够用,后续也没啥大问题就不改了。
keakon   
因为有 __setitem__ 方法。提供 dict.get 方法是因为 __getitem__ 在 key 不存在时会抛出异常。
est   
.update() 啊
LZ 可以了解一下一个叫 UserDict 的东西。
009694   
get 是为了默认值 set 是为了啥? 因为你 java 先入为主的概念
您需要登录后才可以回帖 登录 | 立即注册

返回顶部