课程
/后端开发
/Python
/python进阶
两段代码中,区别中init中一个多了self.name = name
问题1:这句的作用是什么?
问题2:我中编辑器中加不加这句都可以运行成功,结果是对的。那是不是说明就可以不加呢?
问题3:我用的chrome的浏览器,慕课网的编辑器好像不运行程序了
2015-12-27
源自:python进阶 4-6
正在回答
1、self.name = name 这句话是对实例属性初始化。
2、加不加结果都一样,是因为你并没有用到name这个属性
自问自答:self.name = name 是初始化实例属性,当创建实例时,__init__()方法被自动调用,我们就能在此为每个实例都统一加上name属性.可以不用添加,但是在该def中后面使用的时候,就都要加self.name了。self.name指的是实例属性。
我自问自答第三问吧,网页上运行的程序是我从IDE中直接复制粘贴上去的,应该是带有其他的代码所以不允许了,我把代码先复制到记事本,然后再粘贴到慕课网网页上之后就可以运行了。
其他的两个问题还是请同学们帮忙解惑一下吧,谢谢!我的想法是,既然有没有那么一句话程序都可以运行,那又何必要多写一句呢,还是以后用在实际工作中的时候不那么写一定会报什么错或者出问题吗?
举报
学习函数式、模块和面向对象编程,掌握Python高级程序设计