为了账号安全,请及时绑定邮箱和手机立即绑定

​self.__score = score 私有属性不是应该 = 两边都加 __吗 为什么=右边不加__呢?

self.__score = score  私有属性不是应该 = 两边都加 __吗 为什么=右边不加__呢?

正在回答

5 回答

没错啊   ,  右边的score只是一个参数而已呀  ,是个将要传进来给私有属性__score  的值

0 回复 有任何疑惑可以回复我~
#1

1小马哥1

那么__self__(self,score)里面的属性score,和self.__score=score里面的属性是同一个属性吗?
2018-09-28 回复 有任何疑惑可以回复我~

就是这样定义的

0 回复 有任何疑惑可以回复我~

为什么score一定要定义成私有属性才能成功运行,不定义成就报错呢?


http://img1.sycdn.imooc.com//5a3f22f10001232907480561.jpg

0 回复 有任何疑惑可以回复我~
#1

老夫上去就是点点点

不定义成私有属性,那还要方法干嘛,就直接可以调用了
2018-01-17 回复 有任何疑惑可以回复我~

__xxx__ 系统定义名字 
__xxx 类中的私有变量名

具体可以参考http://blog.csdn.net/aries5555/article/details/8606246

0 回复 有任何疑惑可以回复我~
#1

HuffLeo 提问者

我说的是 self__score = __score 这种写法 不是 __score___
2017-11-29 回复 有任何疑惑可以回复我~

因为有很多特殊方法, 比如__init__, __call__,等等,他们是两边都加的,所以说不建议加,怕冲突(不过不冲突的情况下能不能加,还没试)

0 回复 有任何疑惑可以回复我~
#1

HuffLeo 提问者

我说的是 self__score = __score 这种写法
2017-11-29 回复 有任何疑惑可以回复我~
#2

1小马哥1

你这是答非所问呀
2018-09-28 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255533    人
  • 解答问题       3038    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

​self.__score = score 私有属性不是应该 = 两边都加 __吗 为什么=右边不加__呢?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号