在类上调用方法而不是在对象

时间:2018-05-29 11:29:21

标签: python-3.x

这是关于方法dict.fromkeys():

  

该方法只能直接用于dict类,而不能用于特定的字典对象。因此,此方法将始终写为dict.fromkeys()

为什么这样实现?为什么不在字典对象上调用dict.fromkeys()但在dict类上调用?

1 个答案:

答案 0 :(得分:4)

因为它有意义。 从它自己的文档字符串:

  

返回一个新的dict,其中包含来自iterable的键,值等于value

创建一个新的(空?)字典是没有意义的,只是为了能够调用一个无论如何返回一个新字典的方法。

dict().fromkeys(list_of_keys, value)  # works but does it make any sense?
#   ^^ creating a new, empty dictionary and immediately throwing it away