Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 모듈, 클래스 및 네임스페이스를 어떻게 비교할 것입니까?

<시간/> <본문>

네임스페이스는 범위를 구현하는 방법입니다. Python에서 각 패키지, 모듈, 클래스, 함수 및 메서드 함수는 변수 이름이 확인되는 "네임스페이스"를 소유합니다. 함수, 모듈 또는 패키지가 평가될 때(즉, 실행 시작) 네임스페이스가 생성됩니다. "평가 컨텍스트"로 생각하십시오. 함수 등이 실행을 마치면 네임스페이스가 삭제됩니다. 변수가 삭제됩니다. 또한 이름이 로컬 네임스페이스에 없는 경우 사용되는 전역 네임스페이스가 있습니다.

파이썬에는 파일에 정의를 넣고 스크립트나 인터프리터의 대화형 인스턴스에서 사용하는 방법이 있습니다. 이러한 파일을 모듈이라고 합니다. 모듈의 정의를 다른 모듈이나 기본 모듈로 가져올 수 있습니다. 따라서 파이썬 모듈은 재사용 가능한 코드를 캡슐화하는 패키지일 뿐입니다. 모듈은 __init__.py 파일이 있는 폴더에 있습니다. 모듈은 함수뿐 아니라 클래스도 포함할 수 있습니다. 모듈은 import 키워드를 사용하여 가져옵니다.

반면에 클래스는 기본 애플리케이션 코드 또는 애플리케이션에서 가져온 모듈 내부에 정의할 수 있습니다. 클래스는 객체 지향 프로그래밍의 핵심이며 속성과 메서드를 포함할 수 있습니다. 클래스의 여러 인스턴스를 만들 수 있지만 모듈의 인스턴스는 만들 수 없습니다. 모듈을 정적 클래스 또는 싱글톤과 비교할 수 있습니다.