Python 의 클래스, 모듈 과 패키지 개념
http://www.cnblogs.com/allenblogs/archive/2011/05/24/2055149.html
이렇게 이해 할 수 있다.
1. 클래스 는 클래스 다.
2. 모듈 은 py 파일 입 니 다. 모듈 이름 은 py 파일 이름 으로 접 두 사 를 지 웁 니 다. py
3. 가방 은 폴 더 입 니 다. 가방 이름 은 폴 더 이름 입 니 다.
4. 클래스 는 모듈 에 놓 습 니 다 (클래스 는 py 파일 에서 정의 합 니 다). 모듈 을 가방 에 넣 기 (py 파일 을 폴 더 에 넣 기); 가방 에 도 가방 이 있 을 수 있 습 니 다.
1. 종류
클래스 는 클래스 다.
클래스 정의
class MyClass(OtherClass):
myClassIndex = 1
def __init__(self, a, b, c, classIndex):
#
OtherClass.__init__(self, a, b, c)
self.myClassIndex = classIndex
#
def DoSomething(self):
print("MyClass Index is %d" %(self.myClassIndex))
2. 모듈
모듈 은 py 파일 에 대응 하 는 것 으로 이해 할 수 있 습 니 다. py 파일 에서 일부 함 수 를 정의 합 니 다. 변수 등급
예 를 들 면: 문건
# MyModule1.py
def MyDoSomething(a)
print(a)
class MyClass1:
myClassIndex = 1
def __init__(self, classIndex):
self.myClassIndex = classIndex
def DoSomething(self):
print("MyClass Index is %d" %(self.myClassIndex))
이 모듈 을 가 져 오 면 이 함수 와 변 수 를 다시 사용 할 수 있 습 니 다.
가 져 오기 예:
# Caller.py
import MyModule1
print(__name__) #
print(MyModule1.__name__) # MyModule1
MyModule1.MyDoSomething('Hi') # MyModule1 MyDoSomething
주:
모듈 을 주 프로그램 으로 호출 할 때, __name__의 값 은main__, 그렇지 않 으 면 값 이 모듈 이름 입 니 다.
3. 모듈 경로 검색
MyModule 1 이 가 져 오 면 python 해석 기 는 현재 디 렉 터 리 에서 MyModule 1. py 파일 을 찾 습 니 다. 없 으 면... 환경 변수 PYTHONPATH 에서 찾 습 니 다. 이 환경 변수 가 설정 되 어 있 지 않 으 면, 해석 기 는 미리 설 정 된 디 렉 터 리 를 설치 해서 찾 을 수도 있다.
더 강 한 것 은, 이 검색 경로 목록 은 동적 으로 추가 할 수 있 습 니 다. 매우 간단 합 니 다. list 의 append () 나 insert () 를 사용 하여 새 디 렉 터 리 를 추가 하 는 것 입 니 다.
#module2.py
import sys
import os
print(sys.path)
workpath = os.path.dirname(os.path.abspath(sys.argv[0]))
sys.path.insert(0, os.path.join(workpath, 'modules'))
print(sys.path)
4. 싸다.
가방 은 폴 더 로 이해 할 수 있 습 니 다. 당신 은 다른 기능 에 따라 모듈 을 다른 가방 에 넣 으 세 요.
하지만 특히 주의해 야 할 것 은, 폴 더 를 가방 으로 사용 할 때, 폴 더 에 포함init__.py 파일, 폴 더 이름 을 일반적인 문자열 로 사용 하지 않도록 하기 위해 서 입 니 다. __init__.py 의 내용 은 비어 있 을 수 있 습 니 다. 일반적으로 가방 의 일부 초기 화 작업 이나 설정all__값, 값 __all__에서 package-name import *이 문 구 는 정 의 된 모듈 을 모두 내 보 냅 니 다.
가방 은 어떻게 사용 합 니까?
http://blog.csdn.net/cay22/article/details/8638867
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.