터미널에서 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 키 # 더 이상 입력 할 명령이 없습니다
위 프로그램의 결과를 볼 수 있습니다