| ²é¿´: 749 | »Ø¸´: 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»ÊÇÕâÑù£¿ |
» ²ÂÄãϲ»¶
Ò»Ö¾Ô¸ÏÃÃÅ´óѧ»¯Ñ§Ñ§Ë¶307Çóµ÷¼Á
ÒѾÓÐ3È˻ظ´
315·ÖÇóµ÷¼Á
ÒѾÓÐ4È˻ظ´
»¯Ñ§µ÷¼ÁÒ»Ö¾Ô¸ÉϺ£½»Í¨´óѧ336·Ö-±¾¿ÆÉϺ£211
ÒѾÓÐ4È˻ظ´
×Ü·Ö293Çóµ÷¼Á
ÒѾÓÐ7È˻ظ´
»·¾³×¨Ë¶324·ÖÇóµ÷¼ÁÍÆ¼ö
ÒѾÓÐ3È˻ظ´
284Çóµ÷¼Á
ÒѾÓÐ3È˻ظ´
±±¾©ÁÖÒµ´óѧ˶µ¼ÕÐÉú¹ã¸æ
ÒѾÓÐ6È˻ظ´
0703»¯Ñ§/290Çóµ÷¼Á/±¾¿Æ¾Àú·á¸»/¹¤¿ÆÒ²¿É
ÒѾÓÐ3È˻ظ´
274Çóµ÷¼Á
ÒѾÓÐ16È˻ظ´
Ò»Ö¾Ô¸±±¾©»¯¹¤´óѧ²ÄÁÏÓ뻯¹¤£¨085600£©296Çóµ÷¼Á
ÒѾÓÐ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













»Ø¸´´ËÂ¥