문제 해결 과정
문제 상황 : 파이썬 파일 실행하는데, input 파일 상대 경로를 못 읽어온다.
액션 1 : 기준이 되는 경로를 찾자 print(os.getcwd())
결과 : 예상했던 루트가 아니다, 실행 경로가 상위 폴더로 되어 있다.
➔ 경로 기준은 뭐로 결정되는 걸까?
액션 2 : 출력된 경로를 살펴보니, 켜져있던 터미널 창이 파이썬 파일을 실행할 때 기준이 된다는 것을 알게 됨
액션 3 (해결) : 터미널 경로를 실행파일로 맞춰주고 ctrl + F5 실행하니 성공
추가 개선
추가 문제 상황 : 매 실행파일마다 터미널 경로를 바꿔야 하나?,
터미널을 끈 채로 실행할 때, 자동으로 상위 폴더로 설정되어 실행됨
액션 : debug 설정파일인 launch.json의 파라미터 탐색 후 관련 코드 추가 'cwd 이하 생략'
결과 : 터미널을 끄고, 실행하면 자동으로 실행파일 기준으로 상대경로를 탐색한다.
배운점 :
launch.json은 vscode의 디버그, 실행 config 파일이구나. 그리고 터미널 그냥 별개로 생각했는데, 실행할 때 켜둔 터미널을 기준으로 경로가 지정되고.. 이건 사실 실행단축키가 터미널에 python(파이썬 셸 실행명령어) 절대겅로상의 실행파일 을 입력하는 것과 같아서 그랬던 것 같다.
{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"cwd": "${fileDirname}"
}
]
}
참고 : vs code tutorial doc
'Programming' 카테고리의 다른 글
[Git, 트러블 슈팅] 로컬 프로젝트의 원격 repository 업로드 실패 (버퍼 초과) (0) | 2025.02.12 |
---|---|
[npm] 명령어와 옵션 (package.json이 뭐야?) (0) | 2023.05.09 |
[크롬 익스텐션] vimium, 크롬을 vim 처럼 마우스없이 사용하기 (0) | 2022.08.29 |