2015-11-07 50 views
0

我正在做一個模擬人口增長的程序,但我無法理解如何將變量分配給新生成的人。Python:創建一個獨特的變量來存儲信息

這裏是我的(非常不完全)到目前爲止的代碼:

from random import seed 
from random import randint 
seed() 

m = "male" 
f = "female" 

class Person: 
    def __init__(self, gender, age): 
     if gender == 0: 
      self.gender = m 
     else: 
      self.gender = f 
     self.age = age 

def person_Birth(): 
    x = Person(randint(0,1), 0) 
    return x 

new_Person = person_Birth() #here's the problem 

每次我想「的事業誕生」一個新的人,我怎麼能分開存放他/她的信息即會自動分配一個新變量來存儲他/她的信息而不明確指出一個新的變量?

對不起,如果這讓你感到困惑,我不確定正確的條款。

+0

我沒看到這段代碼有什麼問題。你的預期結果是什麼? –

+0

如何創建列表,並在每次創建列表時將新人添加到列表中?然後,您可以通過列表索引而不是特定變量來引用該人。 – zehnpaard

回答

1

你需要的人引用存儲在容器結構像一個列表或者一個字典:

people = [] 
for _ in range(20): 
    people.append(person_Birth()) 

現在people列表將包含Person 20個實例,您可以遍歷,或分別使用people[0]people[19]分別訪問每一個。

+0

我完全誤解了OP的問題。我不明白我的解決方案在哪裏。你的解決方案完全合理。 +1。 – idjaw

+1

@idjaw輕鬆完成;-)謝謝! – Ben

+0

想到了這樣的事情,但自己從來沒有發現過。非常感謝! – Goton