在python中动态执行包含python脚本的字符串,python脚本,python的exec方


python的exec方法可以用来执行python脚本字符串,如下执行方法:

import sysimport StringIO# create file-like string to capture outputcodeOut = StringIO.StringIO()codeErr = StringIO.StringIO()code = """def f(x):    x = x + 1    return xprint 'This is my output.'"""# capture output and errorssys.stdout = codeOutsys.stderr = codeErrexec code# restore stdout and stderrsys.stdout = sys.__stdout__sys.stderr = sys.__stderr__print f(4)s = codeErr.getvalue()print "error:\n%s\n" % ss = codeOut.getvalue()print "output:\n%s" % scodeOut.close()codeErr.close()

另外python中也有类似javascript的eval函数,可以用来计算字符串包含表达式的值。

评论关闭