EOL错误,错误在哪里?

时间:2018-07-09 00:36:27

标签: python python-3.x eol

我正在尝试让pyton执行此操作,但它始终显示EOL错误,这里的错误在哪里?

exec("a = \"def f(s):\n try:\n  exec(s)\n except: Exception\n print('Error')\"\nb = \"while True: f(input(''))\"\nexec(a)\nexec(b)")

这段代码是我试图将这两个exec行合并为1的结果,也许有更好的方法可以做到,有这两个exec行:

exec("def f(s):\n try:\n  exec(s)\n except: Exception\n print('Error')")
exec("while True: f(input(''))")

1 个答案:

答案 0 :(得分:2)

您要尝试做的事情smells horrible(Python方面)。但是从技术上讲,您的代码中包含多行字符串文字,并且必须用三引号将其括起来:

exec("a = '''def f(s):\n try:\n  exec(s)\n except: Exception\n print('Error')'''\nb = \"while True: f(input(''))\"\nexec(a)\nexec(b)")

字符串中的代码中还有其他错误。