python中self是什么意思?
在class里面,一直都有__init__和self,我一直没明白这究竟是什么意思,只是照着别人的代码模仿着写。为什么class里面要定义self?为什么要初始化?谢谢!...
在class里面,一直都有__init__和self,我一直没明白这究竟是什么意思,只是照着别人的代码模仿着写。为什么class里面要定义self?为什么要初始化?谢谢!
展开
1个回答
展开全部
题主可以学习一下面向对象编程的一般知识。
概括的说,主流的支持面向对象编程的语言(Java, python等)关于“类”的定义是很接近的。类要有一个构造函数(python里就是__init__,Java里是与类同名且无返回值的一个方法),在生成对象时会自动调用。然后为了方便在类的方法中引用当前对象,就引入了一些关键字(python里是self,Java里是this)。所以self并不是程序员自己定义的,而是语言本身内建支持的。
关于self,由于python的语法确实比较奇特,看起来好像self是一个普通参数,但实际并非如此。
关于构造函数,如果题主没有感觉到其存在的必要性,不必在意,不过要记住有这样一个语法。等以后遇到有需求的时候自然就明白了。
概括的说,主流的支持面向对象编程的语言(Java, python等)关于“类”的定义是很接近的。类要有一个构造函数(python里就是__init__,Java里是与类同名且无返回值的一个方法),在生成对象时会自动调用。然后为了方便在类的方法中引用当前对象,就引入了一些关键字(python里是self,Java里是this)。所以self并不是程序员自己定义的,而是语言本身内建支持的。
关于self,由于python的语法确实比较奇特,看起来好像self是一个普通参数,但实际并非如此。
关于构造函数,如果题主没有感觉到其存在的必要性,不必在意,不过要记住有这样一个语法。等以后遇到有需求的时候自然就明白了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询