之前打某个程式码时
刚好要设流水号变数
那时用eval
但会出现can't assign to function call
for i in range(1, 11): eval(f'index{i}') = [i]
File "<ipython-input-1-e1edd69b53c4>", line 2 eval(f'index{i}') = [i] ^SyntaxError: can't assign to function call
不过这用法蛮冷门的
有这需求时
大部分会直接放在list
解决办法用globals()[str]
範例
for i in range(1, 11): globals()[f'index{i}'] = [i] print(f'index{i} =', eval(f'index{i}'))
输出
index1 = [1]index2 = [2]index3 = [3]index4 = [4]index5 = [5]index6 = [6]index7 = [7]index8 = [8]index9 = [9]index10 = [10]