建设网站还不如搬砖,wordpress用户排行,wordpress标题加载中,开源的 二次网站开发Python 内置函数eval() eval(expression, globalsNone, localsNone) 函数用来执行一个字符串表达式#xff0c;并返回表达式的值。
expression: 字符串表达式。global: 可选#xff0c;globals必须是一个字典。locals: 可选#xff0c;locals可以是任何映射对象。
示例
None, localsNone) 函数用来执行一个字符串表达式并返回表达式的值。
expression: 字符串表达式。global: 可选globals必须是一个字典。locals: 可选locals可以是任何映射对象。
示例 x 1eval(x 1)
2 eval(pow(2, 3))
8 eval([1, 2, 3])
[1, 2, 3] eval({name: 白子画, age: 1000})
{name: 白子画, age: 1000}
将Json字符串转为Python字典 msg {name: 白子画, married: false, spouse: null}eval(msg)
Traceback (most recent call last):File stdin, line 1, in moduleFile string, line 1, in module
NameError: name false is not defined
由于Json中的布尔类型、空类型与Python中的不一致所以直接用eval(expression)将会报错。
有两种方法可以解决 方法一转换之前先定义好无法识别的类型。 false Falsenull Nonemsg {name: 白子画, married: false, spouse: null}eval(msg)
{name: 白子画, married: False, spouse: None} 方法二转换时携带定义无法识别类型的字典。 msg {name: 白子画, married: false, spouse: null}eval(msg, {false: False, null: None})
{name: 白子画, married: False, spouse: None}