[파이썬] 네임스페이스 간 변수 공유의 주의사항

Python에서 네임스페이스는 각 모듈 또는 함수의 변수들을 관리하는 개념으로, 변수들이 각 네임스페이스별로 구분되어 있어 중복된 변수명을 사용할 수 있게 해줍니다. 그러나 네임스페이스 간 변수 공유는 주의해야 할 점이 있습니다.

먼저 네임스페이스 간 변수 공유는 각 네임스페이스에 있는 변수를 다른 네임스페이스에서 사용할 수 있게 해주는 개념입니다. 이는 다음과 같이 간단한 코드로 구현할 수 있습니다.

# 모듈1
a = 10

# 모듈2
import 모듈1
print(모듈1.a) # 10

하지만 네임스페이스 간 변수 공유는 변수 값이 변경될 수 있습니다. 따라서 다른 네임스페이스에서 변수의 값을 변경하면 원래 네임스페이스에 있는 변수 값도 변경됩니다.

# 모듈1
a = 10

# 모듈2
import 모듈1
모듈1.a = 20
print(모듈1.a) # 20

따라서 네임스페이스 간 변수 공유를 할 때에는 변수 값이 변경될 수 있는지 여부를 생각해 보고, 이를 방지하기 위해 적절한 방법을 사용해야 합니다.