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

Python-面向对象

剑圣OMG Linux系统工程师
难度中级
时长59分
学习人数
综合评分9.13
144人评价 查看评价
9.4 内容实用
9.0 简洁易懂
9.0 逻辑清晰

已采纳回答 / 天涯明月笙
print programmer.__dict__代码最后一行的__dict__,因为原本的__init__方法还没有执行。因此此时只是执行了实例化的第一步__new__,通过下面dir语句可以看出此时没有__init__过的对象确实没有成员变量(属性...

已采纳回答 / 慕粉2142443891
programer = BackendProgramer.('Albert', 25, 80, 'Python')  改成programer = BackendProgramer('Albert', 25, 80, 'Python')    多了一个.

最赞回答 / 周慕乐_
class NewStyle(object):                                            # 类定义语句   def __init__(self, name, deacription):                    # 类初始化,会在对象创建时自动执行这个函数下面的操作       self.name = name                                             # 类属性          self.deacr...

已采纳回答 / 阿强kevin
可以选择的,点击视频右下角的设置按钮就可以选择清晰度

最赞回答 / 慕粉0131551080
我是这么理解的,不知道对不对, 用__str__可以直接print p就出来,但是自己构造方法的话需要print p.method()出来,至于__dir__可能有时候我们不需要打印所有属性,只选择需要的打印。

最新回答 / Verckolf
这句语法是没有问题的,你可以换个IDE试试,或者把你的报错贴出来~

最新回答 / weibo_字无忌_0
不是说是为了防止出现无限递归的情况吗,不更改的话,确实会引起无限递归,会自动调用父类的方法

最赞回答 / 我来学py
大兄弟,你截图不是你的代码啊,你不把你写的贴出来,谁知道错在哪里

已采纳回答 / 晚唱
    def __new__(cls,*args,**kwargs):        print "call_new_method"        print args        return super(Program.cls).__new__(cls,*args,**kwargs)最后一句行该是return super(Program,cls).__new__(cls,*args,**kwargs)super(Program, cls)方法里参数用逗号分隔。(盯着屏幕看了半天。。。。。。

已采纳回答 / 就算失去也要勇敢去追啊
一个python的文件有两种使用的方法,第一是直接作为脚本执行,第二是import到其他的python脚本中被调用(模块重用)执行。因此if __name__ == 'main': 的作用就是控制这两种情况执行代码的过程,在if __name__ == 'main': 下的代码只有在第一种情况下(即文件作为脚本直接执行)才会被执行,而import到其他脚本中是不会被执行的。

已采纳回答 / 孤独的小猪
报错原因是因为,你第19行print打印括号是中文的,改成英文的就可以。<...code...>
课程须知
热爱编程,对Python基础知识已经掌握。
老师告诉你能学到什么?
1.面向对象的理论基础 2.Python基本的面向对象特性 3.深入的了解Python面向对象

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消