在python中运行包含python代码的字符串。

时间:2014-04-04 08:14:13

标签: python parsing

我有一个包含一些if / else语句的字符串,例如:

self.y = 10

x = "if 1 > self.y: DO-Something else: Do-something-else"

是否可以在程序运行时运行此代码。 (伪代码探索)

x = "if 1 > self.y: DO-Something else: Do-something-else"

runprogram(x)

谢谢!

2 个答案:

答案 0 :(得分:1)

如评论中所述,您可以使用exec(在某些情况下,eval也会这样做)。

但是你需要非常小心,特别是如果用户输入要评估(或执行)的代码。

答案 1 :(得分:1)

使用exec以字符串形式执行代码。

但要小心使用exec:)