toplogo
Sign In

파이썬에서 '_'로 시작하는 함수는 import되지 않는다


Core Concepts
파이썬에서 '_'로 시작하는 함수는 import되지 않는다는 사실을 알아내는 것이 중요하다.
Abstract
이 글은 파이썬 모듈 내에서 '_'로 시작하는 함수가 import되지 않는다는 사실을 다룹니다. 저자는 8년 동안 파이썬을 사용해왔지만, 이 사실을 최근에야 알게 되었다고 합니다. a.py와 b.py라는 두 개의 파이썬 스크립트가 있다고 가정합니다. a.py에는 '_start'와 'public'이라는 두 개의 함수가 있고, b.py에서는 'from a import *'를 사용하여 a.py의 모든 함수를 가져옵니다. 그러나 'start' 함수는 ''로 시작하므로 import되지 않습니다. 따라서 b.py에서는 'public' 함수만 사용할 수 있습니다. 이는 파이썬에서 '_'로 시작하는 함수나 변수는 일반적으로 내부적으로 사용되는 것으로 간주되며, 외부에서 직접 접근하지 않는 것이 좋다는 관례를 반영합니다.
Stats
없음
Quotes
없음

Deeper Inquiries

파이썬에서 '_'로 시작하는 함수나 변수를 어떤 경우에 사용하는 것이 좋을까?

언더스코어(_)로 시작하는 함수나 변수는 주로 내부적으로 사용되는 것을 나타내기 위해 사용됩니다. 이러한 네이밍 컨벤션은 해당 함수나 변수가 모듈 내부에서만 사용되거나, 외부에서 직접 접근해서 사용하지 말아야 함을 나타냅니다. 따라서, 다른 개발자들이 해당 함수나 변수를 직접 조작하지 않도록 하는 용도로 사용됩니다.

'from module import *'를 사용하는 것이 좋은 방법인가, 아니면 특정 함수만 선택적으로 import하는 것이 더 좋은가?

'from module import *'는 모듈에서 모든 함수와 변수를 현재 네임스페이스로 가져오는 방법이지만, 이는 권장되지 않는 방식입니다. 이 방법은 코드의 가독성을 떨어뜨리고, 어떤 함수나 변수가 어디서 왔는지 추적하기 어렵게 만들 수 있습니다. 따라서, 특정 함수만 선택적으로 import하는 것이 더 좋은 방법입니다. 이렇게 하면 코드의 의도가 명확해지고, 필요한 함수만을 명시적으로 가져와서 사용할 수 있습니다.

파이썬 모듈 설계 시 '_'로 시작하는 함수나 변수를 어떻게 활용할 수 있을까?

모듈 설계 시 언더스코어(_)로 시작하는 함수나 변수를 활용하여 내부적으로 사용되는 함수나 변수를 명확히 구분할 수 있습니다. 이를 통해 모듈의 인터페이스를 깔끔하게 유지하고, 외부에서 접근해서 사용하면 안 되는 요소들을 명확히 구분할 수 있습니다. 또한, 언더스코어를 활용하여 모듈의 API를 정리하고, 사용자에게 어떤 함수나 변수가 공개적으로 사용 가능한지 알려줄 수 있습니다.
0
visual_icon
generate_icon
translate_icon
scholar_search_icon
star