繁体   English   中英

将函数绑定到 Python 中的类属性

[英]Bind function to class attribute in Python

我在下面的代码中我不明白函数“hi”如何绑定到类属性“say_hi”。 有人可以让我以清晰的方式理解。 我用谷歌搜索,但解释太技术性了。

def hi(obj):
        print("Hi, I am " + obj.name)

class Robot:
    say_hi = hi


x = Robot()
x.name = "Marvin"
Robot.say_hi(x)

我正在使用此链接学习 Python3。 https://www.python-course.eu/python3_object_oriented_programming.php

在 Python 中,函数也是对象,可以分配给变量。 所以

say_hi = hi

使您能够调用say_hi(x)hi(x)并且两者都将调用相同的函数。

在您的代码中,您只是将函数本身分配给类属性say_hi ,因此,调用say_hi与调用hi相同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM