그냥 개발자 블로그

[Python] exe 파일 만들때 경로 문제 팁 본문

프로그래밍팁/Python

[Python] exe 파일 만들때 경로 문제 팁

마음이파파 2023. 3. 4. 11:24

Python 을 활용하여 프로그램을 만들 때 Python 내부에서 파일을 쓰거나 읽는 등의 프로세스가 있다면, Python 프로그램 배포를 위해 exe 로 만들었는데 실행시 경로 문제가 발생한다면 여기를 주목해 보자.

 

Python 프로그램을 하나의 exe 파일로 만들면 경로를 찾지 못하는 오류가 발생한다. 이런 경우 절대 경로를 직접 입력해줘야 한다.

 

하지만 고정된 환경에서 사용할게 아니라면 Python 프로그램 사용 환경에 따라 경로가 유연하게 변해야 한다. 

다음과 같은 방법으로 해결할 수 있다.

 

import sys

if getattr(sys, 'frozen', False):
    tmpSysPath = sys.argv[0].split("/")
    tmpSysPath = tmpSysPath[:-1]
    sysPath = "/".join(tmpSysPath)+"/"
    
else:
    sysPath = ""
    
    
    
print(sysPath+"keyword.txt")

 

 

 

부연설명

getattr(sys, 'frozen', False)

위 코드를 통해 Python 프로그램이 배포형으로 변환되었는지 확인한다.

 

 

sys.argv[0]

위 코드는 실행하고자 하는 Python 프로그램(exe)의 절대 경로를 가져온다.

 

sys.argv[0].split("/")

위 코드는 절대 경로를 / 문자로 잘라서 변수에 List(배열)에 저장한다.

 

tmpSysPath[:-1]

위 코드는 배열에서 맨마지막 값을 삭제한다.

 

 

 

 

 

copyright 2023 워크식스

'프로그래밍팁 > Python' 카테고리의 다른 글

Python webdriver chromedriver mobile emulater example  (0) 2019.09.02