Python 코드를 복사하여 명령줄에 붙여넣기

Python 코드를 복사하여 명령줄에 붙여넣기

Mac 터미널의 Python3.9 세션에서 한 번에 몇 줄을 붙여 넣으면 다른 줄인지 모르고 실패합니다.

Python 3.9.1 (default, Jan  8 2021, 17:17:17) 
[Clang 12.0.0 (clang-1200.0.32.28)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> a = 7
b = 3
a + b
  File "<stdin>", line 1
    a = 7
b = 3
a + b

         ^
SyntaxError: multiple statements found while compiling a single statement

하지만 흥미롭게도 Python2.7에서 실행하면 원활하게 작동합니다.

Python 2.7.16 (default, Jun  5 2020, 22:59:21) 
[GCC 4.2.1 Compatible Apple LLVM 11.0.3 (clang-1103.0.29.20) (-macos10.15-objc- on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> a = 7
>>> b = 3
>>> a + b
10

내 환경이나 bash_profile에 뭔가 있는 것 같은데 왜 버전 3.9에서만 실패하나요?

미리 감사드립니다. 미겔.

답변1

나는 이것이 전혀 관련이 없는 것처럼 들릴 수도 있다는 것을 알고 있지만 최근에 비슷한 문제에 직면했습니다. 문제는 제가 Linux를 사용하고 있는데 Mac에서는 확인할 수 없다는 점입니다. Bash 기본값은 5.1에서 변경되었으며 이것이 근본 원인입니다. 내 경우에는 텍스트를 일반 셸에 붙여넣을 때 텍스트도 "강조 표시됨"으로 붙여넣어졌고 설정이 도움이 된 것으로 나타났습니다. enable-bracketed-paste off강조 표시된 내용뿐만 아니라 python3 셸 붙여넣기 도움말에서도 해당 붙여넣기는 그것도 잠시 깨졌습니다.

따라서 .inputrc 파일에서 구성할 수 있는 Linux 배포판의 일부 입력 기본값/설정을 살펴보는 것이 좋습니다.

관련 정보