幕布斯6054654
2019-06-26 13:49:58
動態(tài)設(shè)置局部變量如何在Python中動態(tài)設(shè)置局部變量?(其中變量名是動態(tài)的)最新情況:我知道這不是一個好的做法,而且這些評論都是合理的,但這并不意味著這是一個糟糕的問題,只是一個更理論性的問題-我不明白為什么這樣做有理由被否決。
3 回答

墨色風(fēng)雨
TA貢獻(xiàn)1853條經(jīng)驗 獲得超6個贊
locals()
LOAD_FAST
exec
locals()
exec
def func(varname): locals()[varname] = 42 return answer # only works if we passed in "answer" for varname exec "" # never executedfunc("answer")>>> 42
locals()[xxx]
locals()

30秒到達(dá)戰(zhàn)場
TA貢獻(xiàn)1828條經(jīng)驗 獲得超6個贊
locals()
globals()
exec
可能是compile()
# var0 = 0; var1 = 1; var2 = 2code_text = '\n'.join( "var%d = %d" % (n, n) for n in xrange(3) )filename = ''code_chunk = compile( code_text, filename, 'exec' )# now later we can use exec:exec code_chunk # executes in the current context
添加回答
舉報
0/150
提交
取消