파이썬 스크립트 더블클릭으로 실행이 안될 때, 해결 방법

파이썬 개발 환경을 구축하는 방법은 다양합니다. 가장 기본적으로 어떤 에디터를 사용하는지에 따라 달라질 수 있으며, 가상환경을 구축하는 것에서도 차이를 보일 수 있습니다.

가상환경을 사용하는 가장 큰 이유는 파이썬 버전, 라이브러리, 프레임워크등의 요소들을 필요에 따라 달리 사용할 수 있기 때문입니다. 하지만, 초보의 경우 이런 부분을 신경쓰지 않고 사용하기도 합니다.

필요에 따라 라이브러리 및 프레임워크를 pip install 하여 사용하면 되기 때문입니다. 결과적으로 버전이 달라지거나 시스템 환경에서의 충돌등이 발생할 수 있습니다.

이런 문제점이 발생하면 기존에 사용하던 코드들이 먹통이 되는 경우도 있습니다. 고수가 되기 위해서는 다양한 시행착오를 거쳐야 하죠. 시행착오의 대표 격은 바로 오류(error)를 만나고 수정하는 과정에 있습니다.

파이썬 스크립트 더블클릭으로 실행이 안될 때

파이썬으로 코드를 작성하고 스크립트를 저장하면 .py라는 확장자로 파일이 만들어지게 됩니다. 여기서 콘솔을 띄우지 않는다면 .pyw라는 확장자로 저장하면 됩니다. 파이썬 환경 변수를 잘 설정했다면 해당 파일을 더블클릭하면 실행이 됩니다. 마치, 윈도우 exe 파일처럼 말이죠.

그동안 잘 사용했던 스크립트가 어느 순간 먹통이 되었습니다.

  • 오류 상황

shell:startup 폴더에 실행 파일을 넣어두고 자동 실행을 했습니다. 단축키를 이용한 스크린샷 확장자 변환 스크립트였습니다.

클립보드에 스크린샷을 전달하면, 해당 파일을 불러와서 webp 파일로 변환한 후, 클립보드로 보내는 코드였습니다.

크게 필요한 것은 아니죠. 이미지 파일을 별도로 편집하는게 귀찮아서 만들었습니다. 콘솔이 뜨지 않게 저장한 후, 메시지창을 띄워 확인했습니다.

그런데, 갑자기 먹통이 되네요.

이런 상황을 처음 직면하면 너무나 당황스럽습니다. 전문적으로 개발을 하는 것이 아니기 때문에 사용하는 에디터도 다양하고, 특히나 귀찮아 가상환경을 따로 만들지 않고 무작정 사용했습니다. 어디서부터 확인해서 수정해야할지 막막했습니다.

의심되는 부분을 찾아라

가장 큰 의심은 라이브러리 버전의 충돌이었습니다. 기본적으로 파이썬, 아나콘다, vscode, sublime text를 이용하는 과정에서 갑자기 라이브러리 에러가 발생했거든요. 해당 문제는 vscode의 파이썬 버전을 선택하는 것으로 수정했습니다.

그 다음에 발생한 것이 더블클릭으로 실행이 안되는 증상이었습니다. 신기하게도 vscode나 jupyter notebook에서는 실행이 됩니다. 즉, pyw 파일에서만 실행이 안되는 증상입니다.

  • 파이썬을 새로 설치한다.
  • anaconda를 새로 설치한다.
  • vscode를 새로 설치한다.
  • 사용하는 에디터 및 파이썬의 버전을 맞춘다.
  • 라이브러리를 확인하고 버전을 수정한다.
  • 오류 메시지를 그대로 검색한다.

위에서 언급한 방법이 제가 시도한 방법입니다. 너무나 초보적이고 직관적인 방법이기도 합니다. 새로 설치할 때는 버전을 잘 찾아서 설치를 진행합니다. 그래도 문제가 해결되지는 않았습니다. 오류 메시지를 확인하는 것만 남았습니다.

오류 메시지 확인하기

vscode, anaconda jupyter notebook에서 스크립트가 잘 작동하니 오류 메시지를 생각지도 못했습니다. 기본적으로 더블클릭으로 스크립트를 실행하는 것은 콘솔을 통해 파이썬이 실행하는 것이죠. 다른 에디터의 환경을 거치지 않고 말입니다.

즉, 파이썬 idle을 이용하는 것이 가장 빠른 방법이었습니다. 아래는 제가 시도한 방법입니다.

  • powershell에서 스크립트 실행하기
  • cmd 관리자 모드에서 스크립트 실행하기
  • pyinstaller를 이용해 exe 파일을 만들어 실행하기
  • 위 방법 중 exe 파일에서만 작동을 했지만 100%는 아니었습니다.

결국, 스크립트 파일의 연결프로그램을 idle로 설정한 후, 실행합니다. 그리고 오류 메시지를 확인했습니다. 결론은 라이브러리의 문제였습니다. 모든 환경을 새롭게 했다고 생각했는데, 파이썬 라이브러리를 불러오는데 문제가 발생했습니다.

최종 해결 방법

파이썬 idle에서 오류 메시지 확인하기

사용하려는 파이썬 스크립트에서 마우스 오른쪽 버튼을 클릭합니다. 목록 중 idle를 선택합니다. 또는 연결 프로그램에서 idle를 찾아 클릭합니다.

스크립트 idle 실행 방법

이렇게 하면 해당 스크립트를 파이썬 idle로 실행하게 됩니다. 물론, idle를 실행한 후, 불러오기를 해도 되겠죠. idle에서 파이썬 코드를 실행하는 단축키는 F5입니다.

스크립트 실행 화면

스크립트를 실행하면 위 사진과 같이 창이 하나 더 뜨게 됩니다. 지금은 큰 오류 없이 원하는 기능이 잘 구현되고 있기 때문에 큰 무리는 없지만 문제가 발생하면 오류 메시지를 확인할 수 있습니다.

오류 메시지를 확인하면 적절한 방법으로 수정을 해주면 되겠죠. 만약, 저와 같이 라이브러리에서 문제가 발생한다면 해당 라이브러리를 삭제한 후, 다시 설치해보는 방법이 도움이 될 수 있습니다.

  1. 파이썬 라이브러리 삭제 및 설치 방법
  2. 삭제 방법 : pip uninstall 라이브러리명
  3. 설치 방법 : pip install 라이브러리명
  4. 추가, pip list를 통해 설치된 라이브러리를 확인할 수 있습니다.

마치며.

이런 저런 얕은 지식으로 코딩을 해본다는 것은 참 쉽지 않은 일임에 분명한 것 같습니다. 특히, 오류가 발생한 경우에는 막막하기만 하죠. 이런 경우 구글 검색이나, gpt의 도움을 받으면 한결 수월해지기도 합니다. 만약, 저와 같은 문제점을 만난다면 위에서 언급한 방법을 통해 해결책을 찾아보면 좋을 것 같습니다.

댓글 남기기