如何在 Python 中执行包含 Python 代码的字符串?


在这篇文章中,我们将了解如何在 Python 中执行包含 Python 代码的字符串。

要执行包含 Python 代码的字符串,我们应该使用三引号将输入字符串作为多行输入,然后我们将使用内置函数exec()。它将字符串作为输入并返回字符串中代码的输出。

exec() 函数用于动态执行 Python 程序。这些程序可以是字符串或对象代码。如果是字符串,则将其转换为一系列 Python 语句,然后执行这些语句,除非存在语法错误;如果是对象代码,则直接执行。

我们必须小心,不要在函数声明之外的任何地方使用 return 语句,甚至在传递给exec() 方法的代码上下文中也不要使用。

示例

在下面给出的程序中,我们正在获取一个多行代码字符串作为输入,并且我们正在使用exec() 方法找出该字符串的输出

str1 = """

a = 3
b = 6
res = a + b

print(res)
"""

print("The output of the code present in the string is ")
print(exec(str1))

输出

上面示例的输出如下所示:

The output of the code present in the string is
9
None

使用 eval() 函数

要执行字符串中存在的表达式,我们将使用内置函数eval()并将字符串传递给函数,并返回字符串中代码的输出。

示例

在下面给出的示例中,我们正在获取一个表达式作为字符串作为输入,并且我们正在使用eval() 方法对其进行评估:

str1 = "3 + 5"

print("The output of the code present in the string is ")
print(eval(str1))

输出

上面示例的输出如下所示:

The output of the code present in the string is
8

更新于: 2022-12-07

17K+ 浏览量

启动你的 职业生涯

通过完成课程获得认证

开始学习
广告