1. Introduction
표준 Python IDLE IDE v3.12.10 for Windows x64에서 wxPython 최근 모듈을 설치하면서 생긴 문제에 대한 임시 해법입니다. wxPython 모듈을 설치하는 도중에 wx 패키지가 자꾸 엉뚱한 폴더에 설치되는 문제가 발생, 이 문제에 대한 임시 해법입니다.
Python IDE를 여러개 설치해서 사용하다보니 site-packages 폴더에 대한 우선권 문제가 생겨 특정 폴더를 제외하고 타겟 지정 폴더 위치에 우선권을 두는 코드입니다.
제 필요만 채우는 용도로 만들었습니다만.. 관련 방법들이 이런 저런 이유로 다용도로 도움이 될 듯도 해서 일단 기록으로 남기기로 합니다.
2. Code
"""
Program Name : sitecustomize
Version : 1.0.2
Date : 2026. 06.21
Written by : James.
Copyright : All rights reserved.
Comments :
......
......
"""
import sys, os, site
# 우선으로 만들고 싶은 site-packages 경로를 정확히 지정
# 적당히 수정해서 사용하면 될 듯.
TARGET = r"C:\Python_\Lib\site-packages"
def norm(p):
return os.path.normcase(os.path.normpath(p))
target_norm = norm(TARGET)
# 경로가 실제로 존재하는지 확인
if os.path.exists(TARGET):
# 기존에 있으면 제거한 뒤 맨 앞에 삽입
try:
sys.path = [p for p in sys.path if p and norm(p) != target_norm]
except Exception:
# 안전장치: 실패 시 기존 sys.path 유지
pass
sys.path.insert(0, TARGET)
status = "OK"
else:
status = "MISSING"
# =====================================================
# 위 : TARGET 우선화 코드.
# 아래 : 블록 추가, 사용자 site 경로를 제거하는 용도임.
# =====================================================
try:
user_site = site.getusersitepackages()
except Exception:
user_site = None
def _norm(p):
return os.path.normcase(os.path.normpath(p)) if p else None
user_norm = _norm(user_site)
if user_norm:
# sys.path에서 사용자 site 경로를 제거
sys.path = [p for p in sys.path if _norm(p) != user_norm]
# (선택) site 모듈의 사용자 site 캐시도 정리
try:
if hasattr(site, 'USER_SITE'):
site.USER_SITE = None
except Exception:
pass
# =====================================================
# 이하 : 결과 확인용.
# =====================================================
# 시작 시 확인용 출력 (콘솔에 표시됨)
print("sitecustomize: target =", TARGET)
print("sitecustomize: status =", status)
print("sitecustomize: sys.path[0:8] =")
for i, p in enumerate(sys.path[:8]):
print(f" {i}: {p}")
print()
print("#"*70, "^.^;") # ^.^; Again, 확인용.
print()
# 확인용 출력 (원치 않으면 제거)
print("sitecustomize: removed user site:", user_site)
print("sitecustomize: sys.path[0:8] =")
for i, p in enumerate(sys.path[:8]):
print(f" {i}: {p}")
# 코드는 여기까지입니다. ^.^;
3. Result
표준 Python v3.12.10 IDLE IDE for Windows x64에서 실행한 결과입니다. Thonny IDE나 Spyder IDE가 아닙니다.

지정된 위치에 존재하는 site-packages 폴더를 제대로 우선적으로 인식하고 있으며 wxPython 모듈도 정상적인 위치에 잘 설치되었으며 불러오기도 정상 작동합니다. O.K.
4. Notes
wxPython 모듈 설치시 발생한 문제에 대한 임시 해법(보통 Python 관련 복수 IDE 사용시 발생할 수 있음).
제법 괜찮은 많은 교재들조차 sys, os, site 모듈들에 대해서 너무 무시하고 있다는 느낌이 듭니다.
표준 라이브러리에 대한 더그 헬먼님의 교재, "The Python 3 Standard Library by Example - 예제로 배우는 파이썬 표준 라이브러리"가 한국어판으로 나와 있어서 그나마 다행입니다. 하지만 초보자나 입문자가 보기에는 너무 분량이 많고 수준이 좀 전문적이지 않나 생각됩니다. 어쩌겠습니까. 목마른 이가 우물을 파야지.
The Python 3 Standard Library by Example | 에이콘 프로그래밍 언어 시리즈 | 더그 헬먼
파이썬의 수많은 기능에 앞서 이 책은 언어 자체의 가장 기본인 표준 라이브러리에 중점을 두고 있다. 표준 라이브러리는 한 권의 책에 모두 담을 수 없을 만큼 방대하기 때문에 반드시 필요한
www.aladin.co.kr
초보자들이 볼 만한 다른 교재로는 박응용님의 라이브러리 전반에 대한 '얇은' 교재가 한 권 있기는 합니다. 제법 선별적이라 일부에서는 불만이 있을 수도 있습니다. 이점 참작해서 살펴보시면 의외로 도움이 될 만한 부분도 많을 것이라고 생각합니다.
Do it! 점프 투 파이썬 : 라이브러리 예제 편 | Do it! 시리즈 | 박응용
《Do it! 점프 투 파이썬》의 박응용 저자가 그동안 수많은 독자에게 받았던 ‘이제 무엇을 공부해야 할까요?’, ‘파이썬으로 무엇을 해볼 수 있을까요?’와 같은 질문에 대한 대답이다. 파이썬
www.aladin.co.kr
영어 원서로 시스템 관리자를 위한 라이브러리에 대한 교재는 몇 권 나와 있습니다. 아마존 검색해보시길.
■ 응용 연습 과제
1) 랜덤 ..
2) 좌우 ..
5. Files
일단은 코드까지. ^.^;
6. Ref.
1) 이건 .. 임기응변, 해법 자체는 한 권의 책 내용이 아니라 이것 저것 종합적.
2) 박상현. [ 뇌를 자극하는 Python 3 ] 2016. 한빛미디어.
( wxPython에 대해서 간결하지만 잘 정리되어 있는 한 챕터 포함. 추천서. 양서. )
Happy Programming!
^.^;
'Programming > Python' 카테고리의 다른 글
| Python GUI - wxPython - Basic Ex. 001 (0) | 2026.05.31 |
|---|---|
| 스파이더(Spyder) IDE에서 pip 및 pygame 설치 - 001 (0) | 2026.04.04 |
| 스파이더Spyder IDE 공식 다운로드 링크 및 거북이 세 마리 실험 (0) | 2026.04.02 |
| Python 실행 환경 기초 - 001 - CMD 창에서 실행하기 (0) | 2026.04.01 |
| Python Basic : Tuple (0) | 2026.01.19 |