【问题标题】:using Python eval() Method to execute a string format function and return value [duplicate]使用 Python eval() 方法执行字符串格式函数并返回值 [重复]
【发布时间】:2021-06-18 07:25:27
【问题描述】:
x = """
def test_add(a, b):
    add = a + b
    return add

test_add(10, 6)
"""
print(eval(x))

以上代码产生如下错误:

File "<string>", line 2
    def test_add(a, b):
      ^
SyntaxError: invalid syntax

我该如何解决这个错误? 注意:在本例中,16 应打印到控制台。

【问题讨论】:

  • 我相信eval 只计算表达式。
  • Eval 需要一个表达式并返回它的值。您需要 exec 并将 print 语句放在字符串中,因为 exec 返回 None。

标签: python python-3.x eval


【解决方案1】:

eval() 方法可以返回表达式计算的结果。

a = 10
b = 6
print(eval("a+b"))

【讨论】:

  • 好的,然后?这如何回答这个问题?您没有解释为什么问题中的代码不起作用或如何修复它......
猜你喜欢
  • 2021-03-19
  • 2016-06-30
  • 1970-01-01
  • 1970-01-01
  • 2014-03-09
  • 2014-01-29
  • 1970-01-01
  • 2021-02-17
  • 2020-01-22
相关资源
最近更新 更多