[파이썬] 모듈의 네임스페이스와 name

Python은 모듈을 사용하여 코드를 구성할 수 있는 강력한 기능을 제공합니다. 모듈은 함수, 클래스, 변수 및 상수의 집합으로 구성된 다른 파일에 저장된 코드입니다. 모듈을 사용하면 코드를 구성하고 관리하기 쉽고 재사용할 수 있습니다.

하지만 때로는 모듈의 네임스페이스와 이름에 대한 개념을 이해하는 것이 중요합니다. 이 개념을 제대로 이해하면 모듈을 최대한 활용할 수 있습니다.

네임스페이스 (Namespace)

네임스페이스는 객체의 이름이 유일하게 식별될 수 있는 범위입니다. 파이썬에서는 네임스페이스를 사용하여 같은 이름을 가진 객체들을 구분합니다. 모듈은 각자 고유한 네임스페이스를 가지고 있으며, 모듈 내에서 정의된 모든 변수, 함수 및 클래스는 해당 모듈의 네임스페이스 내에 존재합니다.

예를 들어, math 모듈에는 수학 관련 함수들이 정의되어 있습니다. math 모듈의 네임스페이스 내에서 함수 sqrt을 호출하려면 math.sqrt()와 같이 사용해야 합니다. 여기서 math는 네임스페이스이며, sqrt는 네임스페이스의 일부로 사용되는 함수입니다.

이름 (Name)

이름은 객체에 대한 참조입니다. 파이썬에서 모든 객체는 이름을 통해 참조되며, 이름을 사용하여 해당 객체를 사용하고 조작할 수 있습니다. 예를 들어, math.sqrt(16) 코드에서 math.sqrt는 이름이며, 16은 해당 함수에 전달되는 값입니다. 이렇게 이름을 사용하여 해당 객체를 호출하거나 조작할 수 있습니다.

예제 코드

import math

# math 모듈의 네임스페이스 내에 있는 함수 호출
result = math.sqrt(16)
print(result)  # 출력: 4.0

위의 예제에서는 math 모듈의 네임스페이스 내에 있는 sqrt 함수를 호출하여 16의 제곱근을 계산합니다. 결과는 4.0으로 출력됩니다. 이 예제에서 math는 네임스페이스이며, sqrt는 네임스페이스 내에서 사용되는 이름입니다.

네임스페이스와 이름을 제대로 이해하면 모듈을 사용하여 코드를 구성하는 방법에 대해 더욱 자신감을 가질 수 있습니다. 모듈을 활용하여 코드를 모듈화하고, 네임스페이스와 이름을 적절히 활용하여 객체를 호출하고 조작할 수 있습니다.