반응형
파이썬 모듈을 가져 왔는지 확인하는 방법은 무엇입니까?
코드의 어딘가에 모듈을 가져 왔는지 어떻게 확인합니까?
if not has_imported("sys"):
print 'you have not imported sys'
내가 이미 모듈을 가져 왔는지 확인하고 싶은 이유는 때때로 내 프로그램을 엉망으로 만들기 때문에 가져오고 싶지 않은 모듈이 있기 때문입니다.
sys.modules
사전 에서 모듈 이름을 테스트하십시오 .
import sys
modulename = 'datetime'
if modulename not in sys.modules:
print 'You have not imported the {} module'.format(modulename)
문서에서 :
이미로드 된 모듈에 모듈 이름을 매핑하는 사전입니다.
sys.modules를 사용하여 모듈을 가져 왔는지 테스트합니다 (예로 unicodedata를 사용하고 있습니다).
>>> import sys
>>> 'unicodedata' in sys.modules
False
>>> import unicodedata
>>> 'unicodedata' in sys.modules
True
허용되는 sys.modules 답변에 가져올 때 모듈 이름을 바꿀 때주의해야 할 한 가지주의 사항을 추가합니다.
>>> import sys
>>> import datetime as dt
>>> 'dt' in sys.modules
False
>>> 'datetime' in sys.modules
True
sys.modules
인터프리터의 현재 인스턴스에서 사용되는 모든 모듈이 포함되어 있으므로 다른 Python 모듈에서 가져온 경우 표시됩니다.
dir()
이름이 현재 네임 스페이스에 정의되었는지 확인합니다.
2의 조합은 각각의 조합보다 더 안전하며 copy
자신을 정의하지 않는 한 작동합니다 .
if ('copy' in sys.modules) and ('copy' in dir()):
if "sys" not in dir():
print("sys not imported!")
참고 URL : https://stackoverflow.com/questions/30483246/how-to-check-if-a-python-module-has-been-imported
반응형
'development' 카테고리의 다른 글
메이븐 프로젝트를 Dockerize하는 방법? (0) | 2020.12.04 |
---|---|
Azure WebJobs SDK를 사용한 종속성 주입? (0) | 2020.12.04 |
Xcode 8 | (0) | 2020.12.04 |
파이썬 : 디렉토리를 두 단계 위로 가져 오기 (0) | 2020.12.03 |
Git 병합을 해제하는 방법은 무엇입니까? (0) | 2020.12.03 |