-2
如何使用for循環在python 3.2中使用數字來增加變量名稱?
p是玩家,可以是1或2. p1和p2是每個玩家的不同符號。如何訪問具有不同名稱的變量?
p = 1
p1 = x
p2 = i
for c in range(1,3):
input('Player {} ({}), ...? '.format(p,(locals()['p'+str(p)])))
這個locals()函數正在製作字典,但我希望它是變量名。怎麼樣?
可能不應該有這樣的需要。你準備寫什麼樣的程序? – Anorov
您試圖完成的最終目標是什麼?正如Anorov所說,這不太可能是一種好方法。 – dckrooney
解釋爲什麼這不太可能是一種好方法:現在你在做什麼實際上工作得很好。問題是,大概你試圖從一個不同的範圍使用它,其中的變量不在'locals()'中。爲了解決這個問題,你必須傳遞'locals'字典。在這一點上,你可能會維護一個正常的字典並傳遞它,而不是試圖通過名字訪問局部變量。這條規則有一些很好的例外,但是如果其中一條是相關的,那麼您應該立即解釋它,否則所有的答案都將是「爲什麼?!」 – abarnert