3.3 명령 프롬프트에서 Hello, world! 출력하기
이번에는 IDLE을 사용하지 않고 명령 프롬프트에서 파이썬 셸을 실행한 뒤 Hello, world!를 출력해보겠습니다.
- Win+R을 누른 뒤 cmd를 입력하여 명령 프롬프트를 실행합니다.
- python을 입력하여 파이썬 셸을 실행합니다.
- print('Hello, world!')를 입력한 뒤 엔터 키를 누릅니다.
이렇게 명령 프롬프트에서도 파이썬 셸을 실행하여 파이썬을 사용할 수 있습니다. 명령 프롬프트에서 파이썬 셸을 끝내려면 exit()를 입력하거나 Ctrl+Z를 누릅니다.
'python'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다.: 파이썬이 실행되지 않고 이런 에러가 나온다면 환경 변수의 PATH에 파이썬의 경로가 제대로 설정되지 않아서 그렇습니다. 이때는 파이썬을 삭제한 뒤 다시 설치합니다.
제어판 > 프로그램 > 프로그램 제거 > Python 3.6.0 (32-bit)를 선택합니다(버전과 비트수는 자신이 설치한 버전과 비트수에 따라 달라집니다).
Uninstall을 클릭합니다.
'Unit 2 파이썬 설치하기'를 참고하여 파이썬을 다시 설치합니다. 단, 설치할 때 반드시 Add Python 3.6 to PATH에 체크해야 합니다.
또는, 제어판 > 시스템 및 보안 > 시스템 > 고급 시스템 설정 > 환경 변수(N)...에서 <사용자이름>에 대한 사용자 변수(U)에서 Path를 선택하고 편집(E)..를 클릭합니다. 여기서 새로 만들기(N)을 클릭한 뒤 다음 두 경로를 추가합니다. <사용자이름>은 자신의 Windows 계정 이름을 넣습니다. 그리고 Python36은 파이썬 3.6 32비트를 설치했을 때의 경로입니다. 따라서 각자 설치한 버전과 비트수에 맞는 경로를 입력해야 합니다.
-
32비트:
C:₩Users₩<사용자이름>₩AppData₩Local₩Programs₩Python₩Python36-32₩
C:₩Users₩<사용자이름>₩AppData₩Local₩Programs₩Python₩Python36-32₩Scripts₩ -
64비트:
C:₩Users₩<사용자이름>₩AppData₩Local₩Programs₩Python₩Python36₩
C:₩Users₩<사용자이름>₩AppData₩Local₩Programs₩Python₩Python36₩Scripts₩
리눅스와 macOS에서는 보통 콘솔(터미널)에서 python3를 사용합니다.
콘솔에서 python3를 입력하여 파이썬 셸을 실행합니다.
print('Hello, world!')를 입력한 뒤 엔터 키를 누릅니다.
$ python3 Python 3.6.0 (default, Feb 7 2017, 14:50:16) [GCC 5.4.0 20160609] on linux Type "help", "copyright", "credits" or "license" for more information. >>> print('Hello, world!') Hello, world! >>> exit()
리눅스, macOS 콘솔에서 파이썬 셸을 끝내려면 exit()를 입력하거나 Ctrl+D를 누릅니다.
파이썬을 콘솔(터미널, 명령 프롬프트)에서 실행했을 때는 ↑ 방향키를 계속 누르면 이전에 입력한 코드가 차례대로 표시됩니다. 만약 입력한 코드에서 에러가 발생했다면 ↑ 방향키를 눌러서 에러가 발생한 코드를 찾은 뒤에 올바르게 수정해서 실행하면 됩니다.
그럼 이번에는 명령 프롬프트에서 hello.py 파일을 실행해보겠습니다(hello.py 파일에는 print('Hello, world!')가 저장되어 있습니다).
- Win+R을 누른 뒤 cmd를 입력하여 명령 프롬프트를 실행합니다.
- C:\project 폴더로 이동합니다.
- python hello.py를 입력하여 스크립트 파일을 실행합니다.
명령 프롬프트에 Hello, world!가 출력됩니다. 간단하죠? 즉, python 스크립트파일.py 형식으로 실행하면 됩니다.
리눅스와 macOS에서는 python3를 이용해서 스크립트 파일을 실행합니다(python3 스크립트파일.py 형식).
$ python3 hello.py Hello, world!
특히 리눅스와 macOS에서는 앞에 python3를 붙이지 않고 .py 파일을 그대로 실행할 수도 있습니다. 먼저 다음 내용을 hello.py로 저장합니다(리눅스 콘솔에서 파일을 저장하려면 nano, vim, emacs 등의 텍스트 편집기를 사용하면 됩니다. 텍스트 편집기 사용 방법은 따로 설명하지 않겠습니다).
hello.py
#!/usr/bin/python3 print('Hello, world!')
hello.py 파일을 저장했으면 chmod 명령으로 hello.py에 실행 권한을 줍니다(+x 옵션은 실행 권한을 준다는 뜻이며 chmod 755도 같은 기능). 그다음에 ./hello.py를 입력하여 파이썬 파일을 실행합니다(./는 현재 디렉터리에 있는 파일을 실행한다는 뜻입니다).
$ chmod +x hello.py $ ./hello.py Hello, world!
여기서 hello.py 파일의 첫 줄에 있는 #!/usr/bin/python3가 핵심인데 이 부분을 셔뱅(shebang)이라고 합니다. 셔뱅은 현재 파일을 실행해 줄 프로그램을 지정할 때 사용합니다. 즉, 셔뱅에 파이썬 경로를 지정해 놓으면 해당 파이썬으로 .py 파일을 실행합니다.
이처럼 셔뱅을 사용하면 ./hello.py처럼 python3를 붙이지 않아도 파이썬 스크립트 파일을 실행할 수 있습니다.
참고로 파이썬이 설치된 경로는 시스템마다 다를 수 있으므로 보통 다음과 같이 /usr/bin/env를 사용하여 파이썬 경로를 지정합니다(env는 환경 변수에 지정된 경로에서 프로그램을 찾아서 실행합니다).
#!/usr/bin/env python3