하지만 모듈을 가져올 때, 파이썬은 모듈의 모든 하위 모듈을 자동으로 가져오지 않습니다.
따라서 "font_manager"를 사용하려면 다음과 같이 "matplotlib" 모듈을 가져온 후에도 "font_manager"를 별도로 가져와야 합니다:
import matplotlib
from matplotlib import font_manager
# 이제 font_manager를 사용할 수 있습니다.
즉, "font_manager"는 "matplotlib"의 하위 모듈이기 때문에 따로 가져와야 하며, 모든 하위 모듈은 기본적으로 자동으로 가져와지지 않는다는 것을 의미합니다.
일반적으로 파이썬에서 상위 모듈을 import하면 하위 모듈도 자동으로 import됩니다. 하지만 "matplotlib"의 경우에는 예외적인 경우입니다. "matplotlib"은 다양한 하위 모듈을 가지고 있으며, 일부 하위 모듈은 자동으로 import되지 않도록 설계되어 있습니다. 이렇게 하면 전체 패키지를 import하는 데 시간이 오래 걸리는 것을 방지할 수 있습니다.
"matplotlib"의 하위 모듈 중 일부는 사용자가 직접 import해야만 사용할 수 있습니다. "font_manager"는 그 중 하나입니다. 이러한 구조는 사용자가 필요한 모듈만 선택적으로 가져와서 메모리 사용을 최적화하고, 원하지 않는 기능이 포함되지 않도록 하는 데 도움을 줍니다.
따라서 "matplotlib"를 import하더라도 "font_manager"와 같은 하위 모듈을 사용하려면 별도로 import해야 합니다.