본문 바로가기
Python/Python FAQ

Python 왜 사람들은 파이썬 스크립트의 첫번째 줄에 "#!/usr/bin/env python"을 작성하는 걸까요?, Why do people write "#!/usr/bin/env python" on the first line of a Python script?

by 베타코드 2023. 5. 25.
반응형

질문


나는 이것들을 Python 파일의 맨 위에서 본다:

#!/usr/bin/env python
#!/usr/bin/env python3

그 줄 없이도 파일이 같이 실행되는 것 같다.


답변


여러 버전의 Python이 설치되어 있다면, /usr/bin/env는 사용되는 인터프리터가 환경의 $PATH에서 첫 번째 것인지 확인합니다. 대안은 #!/usr/bin/python과 같은 것을 하드 코딩하는 것입니다. 그것은 괜찮지만 덜 유연합니다.

Unix에서 해석되는 실행 가능한 파일은 첫 번째 줄의 시작에 #!가 있고 이어서 인터프리터(및 필요한 모든 플래그)가 있으면 사용할 인터프리터를 나타낼 수 있습니다.

다른 플랫폼에 대해 이야기하고 있다면, 물론이겠지만, 이 규칙은 적용되지 않습니다(하지만 그 "shebang line"은 해를 끼치지 않으며 Unix 기반(예: Linux, Mac 등) 플랫폼으로 스크립트를 복사할 경우 도움이 됩니다).

반응형

댓글