화면 GNU에 여러 줄 값을 붙여넣고 한 줄씩 실행합니다.

화면 GNU에 여러 줄 값을 붙여넣고 한 줄씩 실행합니다.

저는 테스트를 위해 ipython 셸에 코드 조각을 붙여넣는 데 익숙합니다.

이런 걸 복사해서 붙여넣으면

print("A")
print("B")
print("C")

ipython 셸에서는 단 3줄의 코드로 구성되어 있으며 Enter 키를 누르면 명령이 실행됩니다. 하지만 스크린 세션에서 이 작업을 수행하면 3줄의 명령문이 모두 표시되지 않습니다. 대신 첫 번째 문만 실행하고 나머지 2개 문은 건너뜁니다.

위의 내용을 붙여 넣으면 직접 출력이 제공됩니다.

In [1]: print("A")
A

화면 밖에서 붙여넣으면 다음과 같은 결과가 나타납니다.

In [1]: print("A")
   ...: print("B")
   ...: print("C")
A
B
C

그런데 이런 함수를 붙여넣으면

def foo():
    print("A")

다음 두 명령문을 표시하십시오.

Python에서 함수나 범위를 열 때 다른 입력 줄이 필요하기 때문에 이것이 의심됩니다. 따라서 명령을 실행하더라도 완전히 실행되지 않고 더 많은 입력을 요청하는 메시지가 표시됩니다.

캐리지 리턴을 통해 붙여넣을 때 화면에서 이러한 명령이 실행되지 않도록 하고 싶습니다.

관련 정보