2
如何能產生這種語法結果0,RESULT1,結果2等多種陣列..動態數組名
我嘗試這樣做這項工作:
for i in xrange(0, 7):
var_num = i
globals()['result%s' % var_num] = []
globals()['result%s' % var_num].append(1000+i)
print ['result%s' % var_num][0]
它給了我論文數組:
result0
result1
result2
result3
result4
result5
result6
但我敢肯定有另一種方式做到這一點?...
感謝
正確的答案是「不要」。你真正的用例是什麼?類似於列表的defaultdict可能更合適。 (另外:Python列表不是數組 - 有*庫爲Python提供數組,但這些不是它們 - 但這是一個單獨的討論)。 –
http://nedbatchelder.com/blog/201112/keep_data_out_of_your_variable_names.html – wim
在支持它的任何語言中,這通常不被認爲是一種好的做法。由於某些原因,請參閱[_你爲什麼不想創建動態變量_](http://stupidpythonideas.blogspot.com/2013/05/why-you-dont-want-to-dynamically-create.html)和[_Never使用動態變量名稱](http://www.techrepublic.com/blog/it-security/never-use-dynamic-variable-names/)。 – martineau