파이썬 인터프리터에서 한 줄 이상의 코드를 작성하려면 어떻게합니까? 데 문제가 있습니다. 나는 기본

터미널에서 Python을 코딩하는 데 문제가 있습니다. 나는 기본 사항을 배우기 때문에 .py 파일을 만들 필요가 없습니다.

터미널에서 Python 인터프리터에서 한 줄의 코드를 실행할 수 있지만 두 줄 이상을 어떻게 작성합니까?

분명히 Enter 키를 누르면 명령이 입력되고 한 줄로 내려 가지 않습니다.

터미널에서 다음을 테스트하고 싶습니다.

my_age = 35
my_eyes = 'Blue'
print "my age is %d and my eye color is %s" % (my_age, my_eyes)


답변

후행 백 슬래시 추가 ( \)

트릭은 bash예를 들어 수행 할 작업과 유사하게 후행 백 슬래시를 추가하는 것입니다. 예를 들어, 다음을 인쇄하려는 경우 1:

charon:~ werner$ python
>>> print 1
1
>>> print \
... 1
1
>>>

를 쓰면 \파이썬은 ...다음 줄에 코드를 입력 하라는 (계속 줄)을 묻습니다.

참고 : 이것은 함수 또는 클래스 정의를 만들 때 자동으로 발생하는 것입니다. 즉, 실제로 새 줄 이 필요한 시간 이므로 절대로 그다지 잘 사용하지 않거나 적어도 내가 아는 것은 없습니다. 다시 말해, 파이썬은 새로운 함수 정의 나 다른 유사한 구문 (예 :)을 입력 할 때 연속 선이 필요하다는 것을 알기에 충분히 영리 if:합니다. 이 자동적 인 경우, \파이썬에게 당신이 끝났다는 것을 알리기 위해 빈 줄을 입력해야한다는 것을 명심하십시오 .

다른 모든 것에는 한 줄씩 작성해야합니다. 통역사가 작동하는 방식은 통역사가 공급하는 모든 줄을 해석하는 것입니다. 더 이상은 아닙니다. 개행을 볼 때만 “동작”하므로, 인터프리터에게 줄 것을 실행하도록 지시합니다. 단일 백 슬래시는 인터프리터가 개행 문자를받지 못하게 Enter하지만 ( 실제로 눌렀다는 것을 알지 못함 ) 결국 문자를 받습니다.

Python의 인터프리터는 Emacs 또는 vi 스타일 키 바인딩과 같은 GNU readline을 사용하여 한 줄 내에서 탐색 할 때 고급 기능을 제공 합니다 (예 🙂 Ctrl-A. 그러나 현재 한 줄에서만 작동합니다. 역사도 있습니다 . 시도하고 누르십시오 .

복잡한 라인을 반복해서 실행하려면 어떻게합니까?

한 번에 두 줄 이상의 코드를 실행하려면 적절한 소스 파일을 사용하고 싶을 것입니다.

또는 내장 인터프리터를 사용하여 Python 코드를 작성하는 훌륭한 대화식 방법을 제공하는 Jupyter 노트북을 사용 하십시오 . 소스 코드 편집기에서와 같이 코드를 작성할 수 있지만 어떤 라인을 함께 해석할지 선택할 수 있습니다. 그런 다음 코드의 일부만 선택적으로 실행할 수 있습니다. 가장 좋은 방법은 작업 흐름에 적합한 지 확인하는 것입니다.


답변

어때요 ;\? 세미콜론은 명령의 끝을 알리고 다음 줄에서 계속할 백 슬래시 신호를 나타냅니다. 예를 들어, python명령 줄에 입력 하여 Python 인터프리터에 들어가십시오.

>>> x=0 ;\
... print(x) ;\
... x=4 ;\
... print(x)

의 출력을 제공해야

0
4

답변

간단히 말해서 배우고 두 줄 이상을 실행하려면 .py 파일에 씁니다.

후행 백 슬래시 방법은 일련의 명령을 빠르게 실행하려고 할 때 유용하지만 학습 할 때는 도움이되지 않습니다.

코드를 더 잘 개발하고 철자 실수에 대해 걱정할 필요없이 개별 명령을 편집하며 작은 파일로 작성할 때 유용하다고 생각되는 코드 스 니펫을 재사용 할 수 있습니다.


답변

쉘 프롬프트에서 다음을 입력했는데 정상적으로 작동했습니다.

$ python
Python 2.7.3 (default, Aug  1 2012, 05:16:07)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> my_age = 35
>>> my_eyes = 'Blue'
>>> print "my age is %d and my eye color is %s" % (my_age, my_eyes)
my age is 35 and my eye color is Blue
>>>

대화 형 Python 인터프리터에서 둘 이상의 코드 줄을 입력하는 방법은 대화 형 Python 인터프리터에서 둘 이상의 코드 줄을 입력하는 것입니다. 나는 그것이 당신의 목적에 충분할 것이라고 생각합니다.

각 줄마다 새로운 프롬프트가 표시되는 것은 사실입니다. 즉, 두 줄의 코드가 출력을 생성하면 해당 출력이 프롬프트로 분리됩니다. 귀하의 질문에있는 예가 다음과 같이 제안하지는 않았지만 그것이 당신이 걱정하는 것 같습니다.

$ python
Python 2.7.3 (default, Aug  1 2012, 05:16:07)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> print "first line"
first line
>>> print "second line"
second line
>>>

이것이 문제라면, 여러 문장을 (적절하게 들여 쓰기!) if문으로 묶을 수 있습니다 .

$ python
Python 2.7.3 (default, Aug  1 2012, 05:16:07)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> if 1:
...     print "first line"
...     print "second line"
...
first line
second line
>>>

(나는 당신의 질문에 대답하지 않더라도,이 문제에 대해 충분히 복잡한 코드를 작성한다면 스크립트를 작성해야한다고 제안합니다. 아마도 당신은 1 년 반에 그렇게 시작했을 것입니다 질문을 게시 한 이후)


답변

방금 다른 답변을 입력하여 실험을 계속했습니다. 마침내 올바른 구문을 작성하여 다음을 시도하십시오.

print("more string") ; print(3)

이것은 당신에게 결과를 줄 것이다

more string

3

오류없이

방금 ‘;’을 사용했습니다. 다른 줄에 쓰도록

내 답변이 도움이 되었기를 바랍니다.


답변

쉘을 그대로두고 새 편집기 파일을여십시오. 즉, 파일로 이동하여 새 파일을 엽니 다. 원하는만큼 줄을 작성하십시오.


답변

세 개의 점에서 다음 명령을 입력하기 전에 “tab”키를 누르십시오. 그런 식으로 많은 명령을 계속 쓸 수 있습니다. 따라서 두 번째 코드 줄을 작성한 후 enter 키를 누르면 인터프리터를 통해 아래 피보나치 예제와 같이 (튜토리얼의) 세 번째 코드 줄을 입력 할 수 있습니다.

a, b = 0,1 while b <10 : … print (b) # 점 뒤에 인쇄 명령을 입력하고 마지막에 Enter 키를 누르면 u 들여 쓰기 오류가 발생합니다. 대신 세 개의 점 뒤에 탭을 누른 다음 코드를 작성하고 Enter 키를 누르면 세 번째 코드 줄을 입력 할 수 있습니다. 아래 예제를 참조하십시오 (자습서에서).

a, b = 0,1 # Enter 키 뒤에 b <10 : # Enter 키 뒤에 … print (b) # Enter 키 뒤에옵니다. 세 개의 점 다음에있는 탭에 유의하십시오 … a, b = b, a + b # 다음에 Enter 키가 있습니다 … enter 키 # 더 이상 입력 할 명령이 없습니다

위 프로그램의 결과를 볼 수 있습니다