我使用eval()
将列表分配给var:
eval('mylist = [1,2,3]')
但是当我运行它时,我得到了一个SyntaxError。它出什么问题了?如果我不能在eval()
中进行赋值,如何在运行时分配var。
答案 0 :(得分:13)
使用exec
语句:
>>> exec 'lis = [1,2,3]'
>>> lis
[1, 2, 3]
eval
仅适用于2*2
,4+5
等表达式
eval
和exec
都可以,但如果字符串来自未知来源(用户输入),则不要使用它们。