itsource

대시 또는 이름에 하이픈(-)이 있는 Python 모듈

mycopycode 2023. 9. 24. 12:48
반응형

대시 또는 이름에 하이픈(-)이 있는 Python 모듈

foo-bar.py 이라는 이름의 대시가 있는 기존 파이썬 모듈이 있습니다.

모듈명을 변경하는 것은 모듈을 공유하기 때문에 피하고 싶은 일이며, 저는 모듈이 사용되는 모든 장소를 추적해야만 저의 특별한 케이스가 작동할 수 있습니다.

이름에 일반적으로 금지된 '-'가 포함된 모듈을 로드하는 방법이 있습니까?

(저는 이것이 최선의 방법이 아니라는 것을 이해합니다.하지만 이런 상황에서는 훨씬 더 큰 애플리케이션 세트를 재설계하고 테스트하고 싶지는 않습니다.또한 제가 시간을 내어 그러한 변화를 실행하는 것을 저희 회사 사장님들이 인정하지 않으리라고 생각합니다.)

사용하시면 됩니다.예를 들어,

foobar = __import__("foo-bar")

대신 모듈 이름을 꼭 바꾸셔야 합니다.그러면 모듈의 파일 이름이 프로그램에 사용된 식별자와 다른 혼란을 방지할 수 있습니다.

이 질문은 이미 질문자의 만족에 대한 답변으로 답변을 마친 것으로 알고 있지만, 여기에 제가 생각하기에 위와 같은 장점이 있다고 생각하는 또 다른 답변이 있습니다.__import__().

import importlib
mod = importlib.import_module("path.to.my-module")
# mod.yourmethod()

문서에 따르면:

"This provides an implementation of import which is portable to any 
Python interpreter. This also provides an implementation which is 
easier to comprehend than one implemented in a programming language 
other than Python."

Python 2.7+ 오직

언급URL : https://stackoverflow.com/questions/7583652/python-module-with-a-dash-or-hyphen-in-its-name

반응형