2
如何從'self'語法中使用變量作爲'key'來獲取保存的值?通過名稱獲取變量
一些代碼:
class Foo:
def __init__(self, n1, n2, n3, ...):
self.node_1 = n1
self.node_2 = n2
self.node_3 = n3
...
def get_node(n):
return self."node_"+n # This is wrong. What should I use?
我不能做一個switch語句,因爲我有21個值...
只是令人格外清楚,如果
n = 2
,我想要價值self.node_2
。所以n = 3
是self.node_3
等
你爲什麼不只是'self.nodes'列表?雖然你可以*通過存儲在字符串中的名字訪問屬性,但是節點列表會更有意義。 – user2357112
臨時解決方案? 'getattr'功能。對於「我需要動態變量名稱」的正確解決方案是使用字典(如果名稱必須是真正任意的)或列表(如果您想要var1,var2,... varN)。 –
這個問題不是重複的。相同答案的問題不是*總是*同一個問題。 –