Python 的构造函数是__init__吧?

2015-05-08 15:53:46 +08:00
 tanteng


这个教程说init不是python构造函数,请各位专家大神说说。
3222 次点击
所在节点    Python
11 条回复
thinker3
2015-05-08 16:27:08 +08:00
__new__, metaclass
vinceguo
2015-05-08 17:07:59 +08:00
python magic function, google
staticor
2015-05-08 18:00:21 +08:00
我个人理解是

new: 你在内存的空间中找到一块空地, 先打个标签: 这地我占了.
init : 你逛了一会儿 回到刚刚占的地, 开始盖了一房子, 用到的材料有 xxx xxx.

所以若是说 **构造** , 应该侧重于前者的功能.
rcmerci
2015-05-08 18:50:37 +08:00
1. __new__
2. 实例构造完成
3. __init__ (初始化一些东西)
lilydjwg
2015-05-08 19:00:37 +08:00
__new__ 才是构造方法,__init__ 是初始化方法。
iEverX
2015-05-08 19:12:30 +08:00
感觉C#或者Java的构造函数,是 __new__ 和 __init__ 两个合起来
monkeylyf
2015-05-08 21:42:31 +08:00
__init__是初始化 在执行这个的时候 实例已经被创建了 这和传统的constructor的概念是不一样的 (参考__new__)
joshryo
2015-05-09 00:13:23 +08:00
python里面很多__xxx__方法都是很玄妙的东西,表面看着执行某函数/操作,其实后面都是执行的某个__xxx__方法
slideclick
2015-05-20 16:39:30 +08:00
记住PPT内容,不要抠字眼。
slideclick
2015-05-21 12:03:19 +08:00
你这ppt不错,哪里找的?
tanteng
2015-05-21 13:20:30 +08:00
@slideclick 不是ppt,是我截图网页内容

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/189507

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX