python - 在实例化类之前在 Python 类中定义的方法的正确术语是什么?

标签 python oop class function terminology

使用来自 http://docs.python.org/tutorial/classes.html#class-objects 的示例:

class MyClass:
    """A simple example class"""
    i = 12345
    def f(self):
        return 'hello world'

根据那些文档,f 是一个返回函数对象的属性引用。

有没有更简短的方式来表达 f 是什么?我可以称它为类的方法吗(注意我没有说“类方法”是不正确的)?还是类中定义的函数?还是实例方法?

换句话说,就 f 与 MyClass 的关系而言,f 的正式简写术语是什么?

最佳答案

如果您具体指的是 MyClass.f 返回的 f,则 f 是一个未绑定(bind)方法。或者至少 REPL 是这样调用它的:

>>> MyClass.f
<unbound method MyClass.f>

但总的来说,我认为没有人会指责您简单地将其称为“方法”。或者,就其与 MyClass 的关系而言,MyClass 的一个方法。

关于python - 在实例化类之前在 Python 类中定义的方法的正确术语是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5751998/

相关文章:

python - 从对象化 XML 中高效获取多个切片

python - 为什么 AMD Ryzen 2700x 比使用 Python 的 3 岁笔记本电脑 Intel i7-6820HQ 慢 2 倍?

python - 是否可以从 Python 中的内置函数类进行扩展?

java - 创建一个对象并将其打印出来,但结果打印了引用。怎么解决这个问题呢?

Java程序-卡牌游戏WAR

java - 更改 JLabel 的文本,其中文本是另一个类中的统计信息

python - 检查字符串中的字母

python - 使用 patch to 模拟一个函数(而不是一个方法)

java - 一个单元应该如何测试 hashCode-equals 合约?

oop - 面向对象或模块化文件和数据 I/O 的技术?