【发布时间】:2019-09-19 19:03:13
【问题描述】:
我知道如何在python中使用神奇的方法,但我想了解更多。
为此,我想考虑三个例子:
1)__init__:
我们在大多数类的开头使用 this 作为构造函数。如果这是一个方法,与之关联的对象是什么?它是用于生成所有其他对象的基本 python 对象吗?
2) __add__
我们用它来改变操作符+ 的行为。上面同样的问题。
3)__name__:
它最常见的用法是在这种结构内部:if __name__ == "__main__":
当你将模块作为主程序运行时返回 True。
我的问题是__name__ 是方法还是变量?如果它是一个变量,与之关联的方法是什么。如果这是一个方法,与之关联的对象是什么?
由于我对这些方法不是很了解,可能问题没有很好地提出。我想了解这些方法在 Python 中是如何构造的。
【问题讨论】:
-
简而言之,Python 在特定时间用特定方式命名的东西做特定的事情。那些“某些名称”几乎都是这样的词,这是“Python 的特殊东西”的约定。
__init__在对象构建时被调用(如果存在)。一个模块的__name__是系统设置的等等……