eval函数可以将字符串认作为表达式并尝试执行,返回对应的结果,因此可以用于tuple,dict,list之间的互转以及使用格式化字符串生成对应格式的数据
如
eval("(1,2)")会返回一个包含1和2两个元素的tuple
eval("[a,b]")会返回一个包含a和b两个元素的数组
但由于eval的特性,它也会对代码安全造成影响,如
eval("Log.error(\"This is an error!\")")就会在系统日志中打出错误信息,诸如open,delete,exec之类的命令也可以执行
因此需要在使用过程中谨慎