2017-11-16 6 views
0

同じ既存のクラスの複数のプロパティを持つクラスを作成したいと思います。私は次のコードを持っていますが、それは実際には貧弱なスタイルのようです...それを行うための良い方法は?同じクラスの複数のプロパティを作成するためのより良いスタイル

class employee: 
    def __init__(self, name): 
     self.name = name 

class company(): 
    def __init__(self): 
     self.a = employee('a') 
     self.b = employee('b') 
     self.c = employee('c') 
     self.d = employee('d') 
     self.e = employee('e') 
     self.f = employee('f') 

t = company() 
+2

私はほんの少ししか言っていないでしょうし、代わりにリストや辞書のようなコンテナに入れたいと思っています。 「少数」とは、意見の問題です。 –

+1

また、Pythonタグをスパムしないでください。あなたの質問には、generic [python]タグのみが必要*です。あなたの質問がversion * specific *の場合、一般的なものに加えてバージョン固有のタグを自由に追加してください。しかし、Python 2とPython 3のタグはほとんど完璧ではありません。 –

答えて

1

私はあなたのクラスがこれよりも柔軟であると思っています。つまり、会社に従業員の追加と削除を許可したいと思っています。これには、インタフェースに対する別のアプローチが必要です。 forループはあなたが実際にあなたの会社を移入する方法おそらくないであることを

class employee: 
    def __init__(self, name): 
     self.name = name 

class company(): 
    def __init__(self): 
     self.employee_list = [] 

    # create and add a new employee 
    def hire(self, new_name): 
     new_employee = employee(new_name) 
     self.employee_list.append(new_employee) 


t = company() 
for new_hire in ["a", "b", "c", "d", "e", "f']: 
    t. hire(new_hire) 

ノートのようなもの。元のコードに相当することを簡単にするためにしました。

関連する問題