我得到了
即使我刚刚定义了变量x,也出现“ NameError:未定义名称'x'”错误。
我将json对象转换为python字典,然后遍历字典以从键名创建变量。因此,对于每个key:value对,“ key”都将变成一个具有该对中“ value”的值的变量。该代码如下所示:
data = json.loads(data)
for key,value in data[0].items():
exec("%s = '%s'" % (key,value))
但是,当我然后尝试将那些新创建的变量传递到代码中以将它们放入SQL表时,我收到了上面的错误消息,使该变量看起来好像不存在。有了这些额外的代码,它看起来像这样:
data = json.loads(data)
for key,value in data[0].items():
exec("%s = '%s'" % (key,value))
x = examples.table_name(key1=key1, key2=key2, key3=key3)
session.add(x)
session.commit()
知道为什么会这样吗?