2015-10-07 3 views
-2

Je dois créer des sous-objets qui deviennent des attributs dans l'objet plus grand. Par exemple, créez une autre classe appelée Revenu. Ensuite, instancier Income en tant qu'attribut de taxReturn appelé Income. Ainsi, vous pouvez accéder aux éléments du revenu d'entreprise en procédant comme suit: taxReturn.Income.sal_wge. Jusqu'à présent, j'ai ceci:Création de sous-objets en Python

class taxReturn: 

    def __init__(self, income = None): 

     income = income or ['sal_wge', 'intr_rec', 'txexem_intinc', 'divid_AGI', 'qual_divid', 'stinc_txref', 'alimony_rec', 
       'bus_netprof', 'net_capgain', 'capgain_dist', 'othr_gain', 'IRA_dist', 'pens_annu_rec', 'pens_annu_AGI', 
       'sch_E_netinc', 'sch_F_netprof', 'unem_comp', 'soc_sec'] 

     self.income = 'income' 

class Income: 
    def ('income'): 
+1

OK. Alors, quelle est votre question? –

+0

Comment créer un sous-objet qui devient un attribut de l'objet plus grand? –

+0

De la même manière que tout autre attribut. Où avez-vous spécifiquement des problèmes? –

Répondre

2

Il semble y avoir un code laissé dans votre exemple, mais il est avant tout droit tranquille pour créer des sous-objets, il vous suffit de les instancier et assigner à un membre. Quelque chose comme:

class Income: 
    def __init__(self, sal_wge): 
     self.sal_wge = sal_wge 

class TaxReturn: 
    def __init__(self, income = None): 
     self.income = income or Income(sal_wge = 0) 

t = TaxReturn() 

print(t.income.sal_wge) 
+1

C'était très utile. Je vous remercie. –

+0

J'ai une question cependant. Je veux que le revenu soit le sous-objet de TaxReturn. Ne l'avez-vous pas dans l'autre sens dans cet exemple? @skyking –

+0

Peu importe, je comprends maintenant. –