结果咧
发表于 2018-2-24 17:07:50
滴滴滴
弟大勿波
发表于 2018-2-28 16:53:56
图看不到了~~
yuzaihuan
发表于 2018-3-8 14:32:39
抱歉,第一次听说钻石继承.
谢谢,
wangzhezhixin
发表于 2018-3-26 16:09:48
老师讲解很精道,深入浅出,非常感谢
白昼
发表于 2018-4-1 12:46:17
Thank you to 小甲鱼!
丨游戏灬需要
发表于 2018-4-24 17:59:30
我能知道例子中不使用super().时的顺序,但我没看到使用super().时, 程序的执行顺序
鱼油小源
发表于 2018-6-3 11:51:26
可怜的某童鞋
fangfangfengfei
发表于 2018-6-14 16:09:41
涨知识!
学学看看
发表于 2018-6-27 09:21:25
糖妖妖66
发表于 2018-7-4 11:53:28
大佬永远是大佬
木一乡
发表于 2018-7-11 20:20:13
哈哈,还是super().__init__()强大啊
绍成_
发表于 2018-7-16 15:10:05
这个方法解析顺序以及这个C3算法需要在使用的时候引用吗?还是Python内部机制?这块有点不明白,如果是内部机制,那最上面的那段代码怎么会得到那样的结果,如果是需要引入类似于super的方法,是不是意味着super方法提供了这种解析顺序和C3算法或者是触发了?那还有没有别的方式解决了呢?望指点,谢谢!
还是鱼头好
发表于 2018-7-22 09:30:58
原来如此,MRO地址记一下⬇
https://www.python.org/download/releases/2.3/mro/
森兔子
发表于 2018-7-28 16:11:33
{:10_279:}super大法好
guizhixiao
发表于 2018-8-22 17:06:23
{:10_265:}
Hitdongfeng
发表于 2018-9-14 09:44:24
学习了{:10_277:}
好汉新新新之助
发表于 2018-9-22 16:33:48
0.可以节约代码量
1.调用会报错
TypeError: __init__() should return None, not 'str'
2.子类定义了之后子类的这些属性和方法会覆盖父类的
3.可以在企鹅类下面重新定义飞的方法,覆盖父类的定义
4.可以自动找出父类的方法,而且符合哪个什么mro方法
5.结果会在调用B,C时都调用了基类A的__init__
6.
class A():
def __init__(self):
print("进入A…")
print("离开A…")
class B(A):
def __init__(self):
print("进入B…")
super().__init__()
print("离开B…")
class C(A):
def __init__(self):
print("进入C…")
super().__init__()
print("离开C…")
class D(B, C):
def __init__(self):
print("进入D…")
super().__init__()
print("离开D…")
0.
import random as r
import math as m
class Point:
def __init__(self):
self.x = r.randint(-100,100)
self.y = r.randint(-100,100)
class Line:
def __init__(self,a,b):
ab = (a-b)**2 +(a-b)**2
print(round(m.sqrt(ab),2))
a = Point()
b = Point()
spot = []
spot.append((a.x,a.y))
spot.append((b.x,b.y))
l = Line(spot,spot)
Lioo
发表于 2018-9-22 22:26:15
领教了
Lioo
发表于 2018-10-2 23:56:16
应该懂了
张佳明0502
发表于 2018-10-31 19:10:52
求解答:使用super函数后,输出的结果
进入D...
进入B...
进入C...
为什么B后是C?
页:
1
2
3
4
[5]
6
7
8
9
10
11