| ²é¿´: 745 | »Ø¸´: 3 | ||
tuburfransth½ð³æ (ÕýʽдÊÖ)
|
[ÇóÖú]
Python¶àÖØ¼Ì³ÐÔõô³õʼ»¯£¿
|
|
´úÂëÈçÏ£º class A(object): def __init__(self, a): print('__init__ A', str(a)) self.A = a class B(A): def __init__(self, a, b): super(B, self).__init__(a) print('__init__ B', str(b)) self.B = b class C(A): def __init__(self, a, c): super(C, self).__init__(a) print('__init__ C', str(c)) self.C = c class D(B, C): def __init__(self, a, b, c, d): B.__init__(self, a, b) # ÕâÐм°ÏÂÐдúÂëÓÐÎÊÌâ£¬Ã²ËÆ¶Ô»ùÀàA½øÐÐÁËÁ½´Î³õʼ»¯ C.__init__(self, a, c) print('__init__ D', str(d)) self.D = d shanghe = D('x', 'y', 'z', 'k') ------------------------------------------------------------------------------------------------------------------- Traceback (most recent call last): File "test.py", line 25, in <module> shanghe = D('x', 'y', 'z', 'k') File "test.py", line 20, in __init__ B.__init__(self, a, b) File "test.py", line 8, in __init__ super(B, self).__init__(a) TypeError: __init__() missing 1 required positional argument: 'c' ----------------------------------------------------------------------------------------------------------- ˵Ã÷£ºAÊÇ»ùÀ࣬BºÍC¶¼¼Ì³ÐA£¬¶øDͬʱ¼Ì³ÐBºÍC£¬ÎÊÌâ³öÔÚ×¢ÊÍÄÇÒ»Ðм°ÏÂÒ»ÐУ¬ÕâÁ½Ðгõʼ»¯´úÂëÓ¦¸ÃÔõôд£¿ »¹ÓÐÒ»¸öÎÊÌâ¾ÍÊÇ£ºBºÍC¶¼¼Ì³ÐÁËA£¬ÄÇô¼ÙÈçAÖÐÓÐÒ»¸öº¯ÊýÃûΪgetname()£¬class D(B, C):»áµ¼ÖÂgetname()º¯Êý±»¸²¸ÇÒ»´ÎÂð£¿Ò²¾ÍÊÇ˵ÓÉÓÚBºÍC¶¼¼Ì³ÐÁËAÖеÄgetname()º¯Êý£¬µ¼ÖÂÓÐÒ»¸ö±»¸²¸ÇÁË£¬ÊDz»ÊÇÕâÑù£¿ |
» ²ÂÄãϲ»¶
269Çóµ÷¼Á
ÒѾÓÐ4È˻ظ´
Ò»Ö¾Ô¸ºÓ±±¹¤Òµ´óѧ0817»¯¹¤278·ÖÇóµ÷¼Á
ÒѾÓÐ7È˻ظ´
Ò»Ö¾Ô¸211 ³õÊÔ270·Ö Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
265Çóµ÷¼Á
ÒѾÓÐ10È˻ظ´
327Çóµ÷¼Á
ÒѾÓÐ3È˻ظ´
²ÄÁÏרҵÇóµ÷¼Á
ÒѾÓÐ9È˻ظ´
291Çóµ÷¼Á
ÒѾÓÐ7È˻ظ´
070300»¯Ñ§Çóµ÷¼Á
ÒѾÓÐ8È˻ظ´
²ÄÁÏר˶ӢһÊý¶þ306
ÒѾÓÐ8È˻ظ´
Çë½ÌÏ´ó¼Ò 2026Äê¹ú¼Ò»ù½ðÉêÇëÊÇ˫äÉóÂð£¿
ÒѾÓÐ4È˻ظ´
tuburfransth
½ð³æ (ÕýʽдÊÖ)
- Ó¦Öú: 9 (Ó×¶ùÔ°)
- ½ð±Ò: 2380.1
- É¢½ð: 68
- ºì»¨: 5
- Ìû×Ó: 384
- ÔÚÏß: 124.8Сʱ
- ³æºÅ: 3425987
- ×¢²á: 2014-09-18
- ÐÔ±ð: GG
- רҵ: ģʽʶ±ð
|
×Ô¼º³¢ÊÔÐÞ¸ÄÁ˼¸´¦£¬ÔËÐнá¹ûºÍÔ¤ÏëµÄÒ»Ñù£¬Ð޸ĺóµÄ´úÂëÈçÏ£º class A(object): def __init__(self, a): print('__init__ A', str(a)) self.A = a class B(A): def __init__(self, a, b): B.__init__(self, a) # Ð޸Ĵ˴¦£¬²»ÖªµÀΪʲôsuper(B, self).__init__(a)»áÓÐÎÊÌâ print('__init__ B', str(b)) self.B = b class C(A): def __init__(self, a, c): C.__init__(self, a) # Ð޸Ĵ˴¦£¬ ²»ÖªµÀΪʲôsuper(C, self).__init__(a)»áÓÐÎÊÌâ print('__init__ C', str(c)) self.C = c class D(B, C): def __init__(self, a, b, c, d): B.__init__(self, a, b) # ÕâÐм°ÏÂÐдúÂëÓÐÎÊÌâ£¬Ã²ËÆ¶Ô»ùÀàA½øÐÐÁËÁ½´Î³õʼ»¯ C.__init__(self, a, c) print('__init__ D', str(d)) self.D = d shanghe = D('x', 'y', 'z', 'k') |
2Â¥2016-12-13 18:27:59
ygidtu
гæ (ÕýʽдÊÖ)
- Ó¦Öú: 4 (Ó×¶ùÔ°)
- ½ð±Ò: 1690.7
- É¢½ð: 798
- ºì»¨: 3
- Ìû×Ó: 419
- ÔÚÏß: 117.7Сʱ
- ³æºÅ: 2854989
- ×¢²á: 2013-12-07
- ÐÔ±ð: GG
- רҵ: ÉúÎïÐÅϢѧ
|
Á½´ÎAµÄ³õʼ»¯ºÜÕý³£°É£¬ÄãBÊǼ̳ÐAµÄ£¬CÒ²ÊǼ̳ÐAµÄ£¬È»ºóDÀïͬʱÓÐBC£¬²»¾ÍÊǰüº¬ÁËÁ½¸öA£¿ËùÒÔAÓеÄÄǸöº¯Êý¿Ï¶¨±»BCÍæ»µÁË£¬¶àÖØ¼Ì³ÐÎÒ´ÓÀ´Ã»¿¼Âǹýͬʱ¼Ì³Ðͬһ¸ö¸¸ÀàÑÜÉú³öÀ´µÄÁ½¸ö×ÓÀ࣬ËùÒÔ»¹Õæ²»ÖªµÀÔõô½â¾ö ·¢×ÔСľ³æAndroid¿Í»§¶Ë |
3Â¥2016-12-14 09:31:20
baichi121234
½û³æ (Ö°Òµ×÷¼Ò)
|
±¾ÌûÄÚÈݱ»ÆÁ±Î |
4Â¥2016-12-14 09:36:14













»Ø¸´´ËÂ¥