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

最赞回答 / weixin_慕设计1349666
class Animal():    def __init__(self,name,age,location):        self.__name=name        self.__age=age        self.__location=location    def get_info(self):        return 'name={},\nage={},\nlocation={}'.format(self.__name,self.__age,self.__location)    ...
Traceback (most recent call last):
File "index.py", line 27, in
print(r1 / r2)
TypeError: unsupported operand type(s) for /: 'Rational' and 'Rational'

本节的代码运行错误,提示地板除的那一行报错,/没有定义,把__truediv__改成__div__运行正确
**kw 可以去看看作者的另一个课程,python基础篇
运行下面一段就成功
class Animal: pass

dog = Animal()
cat = Animal()

dog.name = 'xiaohong'
dog.age = 13

cat.name = 'xiaohong2'
cat.age = 14

print(dog.name)
print(dog.age)

print(cat.name)
print(cat.age)
__call__魔法方法可以将类当作函数来使用,当作为函数来使用时,调用call方法。
例如 文中的 p("Alice"),即相当于之行p.__call__("Alice")
感觉给他讲复杂了,最后非要来一个 __str__,里面还是a/b的,一看还有点蒙 中间也是,小白估计看不明白
def f(x):
return x.title()
l = []
for item in map(f, ['alice', 'BOB', 'CanDY']):
l.append(item)
print(l)

最新回答 / hermaniu
Traceback (most recent call last):  File "C:\Users\hermaniu\Desktop\test1.py", line 162, in <module>    w=Work('Herman',96,'english',22)  File "C:\Users\hermaniu\Desktop\test1.py", line 156, in __init__    super(Work,self).__init__(name,score,course...

最新回答 / ChaosYX
打开两个cmd不就行了么

最赞回答 / 慕粉_pp
关于调用两种方法的时机使用print()时使用%s和f'{}'拼接对象时使用str(x)转换对象x时在上述三种场景中,会优先调用对象的__str__()方法;若没有,就调用__repr__()方法;若再没有,则显示其内存地址。特别地,对于下面两种场景:用%r进行字符串拼接时用repr(x)转换对象x时则会调用这个对象的__repr__()方法;若没有,则不再看其是否有__str__()方法,而是显示其内存地址。<...code...>

最赞回答 / hermaniu
实例本身无count,get_count定义的是类方法,因此Leo.get_count()返回Animal的私有属性__count=0,set_count是实例方法对类无效,因此获取的__count 还是原本的0.
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消