조직의 기본 단위인 Python 모듈은 두 가지 형태로 제공됩니다. 코드 모듈과 패키지 모듈. 코드 모듈은 실행 가능한 Python 코드로 구성되는 반면, 패키지 모듈은 다른 모듈이 포함된 디렉터리를 포함합니다.
Python은 모듈 이름과 파일 이름으로 알려진 고유 식별자를 모듈에 할당합니다. 일반적으로 모듈은 Python 코드의 모듈 이름과 명령줄의 파일 이름으로 식별됩니다. Python은 sys.path 변수를 사용하여 모듈 이름을 파일 이름으로 원활하게 변환합니다.
Python 2.4.1에 도입된 -m 스위치는 원래 명령에서 모듈 실행을 활성화했습니다. 모듈 이름을 기반으로 한 줄입니다. 이는 파일 이름 지정에 대한 대안을 제공했습니다. 초기 반복에서 -m은 최상위 모듈 이름만 지원했습니다.
PEP 338 확장 -m은 더 복잡한 모듈 이름 표현을 처리하여 http.server와 같은 중첩 모듈의 실행을 허용합니다. 또한 모든 상위 패키지 __init__.py 파일의 평가를 의무화했습니다.
최종 주요 발전은 PEP 366에서 이루어졌으며, -m은 절대 가져오기뿐만 아니라 명시적 상대 가져오기도 지원할 수 있는 기능을 부여했습니다. 이는 package 변수를 주어진 모듈 이름의 상위 모듈로 설정하여 달성되었습니다.
기능에도 불구하고 -m은 Python으로 작성된 모듈만 실행할 수 있다는 점에서 제한됩니다. (.py 파일). C 컴파일 코드 모듈은 지원되지 않습니다.
Import 문을 통한 모듈 실행:
명령줄을 통한 모듈 실행 파일 이름:
모듈 이름(-m)이 포함된 명령줄을 통한 모듈 실행:
-m 스위치는 명령줄에서 Python 모듈을 실행하기 위한 강력한 도구 역할을 합니다. 모듈 이름을 파일 이름으로 변환하고, 로컬 패키지를 실행하고, 상대 가져오기를 지원하는 기능은 Python 코드를 관리하는 편리하고 다양한 수단을 제공합니다. Python 기반 모듈 실행에 대한 제한에도 불구하고 -m은 여전히 Python 개발자에게 귀중한 자산입니다.
위 내용은 Python\의 `-m` 스위치의 목적은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!