作者热门文章
- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
Python 中的方法在什么时候获取 get
属性? ——只要在类里面定义它们?为什么 Python 让我定义一个没有任何参数的方法(甚至不是第一个 self
参数)?
我知道如何使用classmethod
和staticmethod
,而且我知道它们是内置函数,但是这样修饰的函数会怎样呢?
基本上,我想知道类定义和类构造之间发生的“魔法”。
最佳答案
看看这个。
http://docs.python.org/howto/descriptor.html#static-methods-and-class-methods
您还可以查看 funcobject.c 中类和静态方法对象的源代码:
http://hg.python.org/cpython/file/69b416cd1727/Objects/funcobject.c
类方法对象定义从第 694 行开始,而静态方法对象定义从第 852 行开始。(当 methodobject.c 也存在时,它们在 funcobject.c 中有标题为“method”的项目,我确实觉得很有趣。)
关于python - 如何在 Python 中实现 `classmethod` 和 `staticmethod` 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6685232/
我是一名优秀的程序员,十分优秀!