【问题标题】:SyntaxError when pasting multiple lines in Python [duplicate]在 Python 中粘贴多行时出现 SyntaxError [重复]
【发布时间】:2021-03-11 18:26:52
【问题描述】:

我在 Python 中复制粘贴代码时遇到问题。假设我想将以下代码粘贴到 Python 解释器中:

string_one = "Help"
string_two = "Me"

在本地,在 Mac OSX 10.15.7 上运行 3.8.5,如果我粘贴该代码,我会得到 SyntaxError: multiple statements found while compiling a single statement

但是,如果我通过 ssh 连接到另一台机器,打开 Python (3.7.4),然后粘贴这两行,则不会出现错误。此外,当我将这两行粘贴到 Python 2.7.16 shell 中时,我没有收到任何错误。这可能是什么问题?

Python 3(问题外壳)

Python 2(非问题外壳)

【问题讨论】:

  • 这将与换行有关。
  • 我在 Mac 上将多行输入粘贴到 Python REPL 中没有问题。
  • 行尾字符。您的 Python 3 将其视为一行。
  • @IainShelvington - 为什么不值得提问? Python 解释器似乎很疯狂……这对我来说似乎是一个合理的问题。
  • @IainShelvington - 那么您如何解释粘贴到三引号字符串的工作原理?或者其他版本的python工作?说这个“需要更多的关注”真是让人头疼。

标签: python


【解决方案1】:

好像readline有bug(Homebrew用来安装python的)

简答:

echo "set enable-bracketed-paste off" >> ~/.inputrc

长答案: https://github.com/Homebrew/homebrew-core/issues/68193


(这被错误地编辑到问题中;我已回滚该编辑,并将解决方案粘贴为实际答案,并标记为社区 Wiki。)

【讨论】:

    猜你喜欢
    • 2021-04-17
    • 2015-09-10
    • 1970-01-01
    • 2011-01-10
    • 1970-01-01
    • 2016-04-25
    • 2023-01-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多