PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2025/05/06 12:19:42
Name Bard3567
Subject [질문] 파이썬 초보 질문 해도 되나요? (수정됨)
여기에 물어보는게 맞을까 싶긴 한데요
최근에 파이썬 기초 공부를 하고 있습니다.(VScode)
근데 프로젝트 내에 다른 폴더에서 DIY했던 코드를 import해서 쓰려고 했는데
ModuleNotFoundError: No module named 'import할 파일명'가 떴는데 해결이 안되서
오기가 생겨 구글링으로 온갖 방법을 다 찾아보고 있습니다.

핵심 문제는 sys.path가 무슨 수를 써도 바뀌지 않는다는것 같은데요.
물론 다른 폴더에 있는 파일을 그냥 복붙해서 같은 폴더에서 쓰면 되지 않냐라고 할수 있는데.
그것과 상관없이 다른 패키지를 import 못한다는게 상당히 기초적인 문제인거 같아서 여쭤봅니다
작업 폴더에 __init__.py는 만들어 뒀구요.
Run python file 로 돌리는거랑 터미널에 직접 .py 실행코드 쳐서 돌리는것 둘다 똑같이 ModuleNotFoundError가 뜹니다.

증상
ModuleNotFoundError: No module named "~~~"

import sys
print(sys.path)
로 확인했을시
c:Python Practice codeBasicPracticeMission_5(현재 작업 폴더)
에서 바뀌지 않음

실패한 시도들

1.파이썬 설치 폴더에 있는 Lib 폴더 밑에 site-packages 폴더에 custom_path.pth" 넣어두기
내용은 (C:Python Practice code)

2. "Preferences: Open User Settings (JSON)"(settings.json) 에서 코드 설정
"terminal.integrated.env.windows": {"PYTHONPATH" : "${workspaceFolder}"}


3.최상위 폴더 아래에 custom.env 따로 만들고
PYTHONPATH=${workspaceFolder}
코드 넣고
settings.json에서 다음 코드로 연동하기
"python.envFile": "/custom.env"

4.시스템 환경 변수 편집 에서 최상위 폴더 디렉토리 추가하기
(C:Python Practice code)

4-1 변수값 변경하고 다시 시도
변수 값:C:UsersUser이름AppDataLocalProgramsPythonPython313Libsite-packages

5.인터프리터 가상환경에서 실행해보기
python 3.13.3 venv 설치해서 실행




* 그나마 성공했던 것
launch.json에
"env" : {"PYTHONPATH" : "${workspaceFolder}/.."}
코드 추가하고 디버거로 코드 돌리기

이건데.항상 디버거로만 돌릴수는 없고 근본적으로 sys.path를 못 바꾼다는게 많이 걸려서 해결법을 찾고 싶습니다
감사합니다

PS.챗지피티 한테는 이미 수없이 물어봤고 해결이 안되니 원론적인 해답만 되풀이 하더라고요

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
지구사랑
25/05/06 12:30
수정 아이콘
간단한 해결책으로 두 가지를 들 수 있습니다.
1. 윈도우 환경 설정에서 (PATH 설정 변경하듯이) PYTHONPATH를 설정해도 되고,
2. sys.path를 이용하고 싶으면 sys.path.insert(0, '원하는 모듈이 있는 path')를 사용해도 됩니다.
보니까 시도는 하셨는데, 디테일이 아주 조금 모자랐던 듯 싶습니다만.
Bard3567
25/05/06 12:52
수정 아이콘
시스템 환경 설정에서
변수 이름:PYTHONPATH
변수 값:C: Python Practice code
로 설정을 했는데 ""(W비슷한 문자)를 쓸때마다 게시글이 인식을 안하는것 같아요.자꾸 없어지네요.

2.와 같은 비슷한 해결책을 많이 보긴 했습니다만 (sys.path.append({경로}) 같은 방식)
매 코드마다 import전에 일일이 sys.path.이런걸 적어줘야 하는게 비효율적이라 미봉책이라 생각했네요.
답변 감사합니다
지구사랑
25/05/06 13:22
수정 아이콘
1. Path에 공백이 포함되면 전체를 더블 따옴표 즉 "로 감싸야 합니다. 예를 들어 set PYTHONPATH="C:Python Practice Code" 식이죠.
2. sys.path.insert는 파일 첫머리에 한 번 있으면 될 텐데요.
Bard3567
25/05/06 13:45
수정 아이콘
1.조언해주신거 듣고 변수 값: "C:Python Practice code" 로 해봤는데 안되더라구요.

2.실습 파일 하나하나를 실행하는데 파일에 sys.path.insert를 매번 붙이는게 참 귀찮다 생각했는데
짦막한 실습 파일이 아닌 실행 파일 하나가 덩치가 커지고 하위패키지가 많아지는 파일은 꼭 비효율적인것도 아니겠다 생각이 드는군요.
답변 감사합니다
25/05/06 13:05
수정 아이콘
Run as module 옵션으로 실행해보셨나요?
Bard3567
25/05/06 13:49
수정 아이콘
Run as module 옵션이 뭐지 하고 검색해 보다가
-m 넣고 돌려보니 각각 동등한 폴더에서 import해오는 거라서 작동이 잘 안되는데
하위 패키지화 시켜놓고 돌리면 잘되는것 같습니다. 아무래도 잘못된게 하위 패키지를 안 만들고 돌리려한 제가 잘못한것 같네요
답변 감사합니다.
25/05/06 15:15
수정 아이콘
import sys
import subprocess

subprocess.check_call([sys.executable, "-m", "pip", "install", "numpy"]) 이건 어떠세요.
무냐고
25/05/07 17:10
수정 아이콘
혹시나 '1:1 파이썬 초보만'일까 해서 들어와봤는데 아니군요. 크크
좋은 답변 받으시길..
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
180585 [질문] 삼성스토어에서 S25 엣지 언제부터 실물 볼 수 있을까요? [1] 서울3543 25/05/13 3543
180584 [질문] 롤 개막 이벤트전(라인ck) 공약 이행됐나요? [2] 크산테2289 25/05/13 2289
180583 [질문] 아기 쌍커풀 질문 입니다. [7] 윈터3756 25/05/13 3756
180582 [질문] 제주 서귀포시 식당 어디가 좋을까요? [19] 마블러스썬데이3781 25/05/13 3781
180581 [질문] 바이오스 업데이트 후 벽돌이 되었습니다 ㅠㅠ [8] 월터화이트1968 25/05/13 1968
180580 [질문] 자동차보험 관련 문의드립니다.(보험사선택) [2] 달콤한인생2270 25/05/12 2270
180579 [질문] 임차인등기 문의드립니다 [5] 리코타홀릭2493 25/05/12 2493
180578 [질문] 8TB HDD를 사려 합니다 [9] 스위치 메이커4800 25/05/12 4800
180577 [질문] 알뜰폰 무제한 요금제에서 무제한 요금제로 변경시 질문입니다. [2] 요하네스버그4528 25/05/12 4528
180576 [질문] 평양냉면 밀키트 많이 드셔보신분 있으신가요? [5] 구승빈과김종인3089 25/05/12 3089
180575 [질문] 신차 번호 질문입니다 [10] 나이스후니2807 25/05/12 2807
180574 [질문] 순수 궁금증인데요, 임산부나 영유아 관련한 의학은 발전속도가 어떤편인가요? [6] FlutterUser3638 25/05/12 3638
180573 [질문] 최태원 회장이 선물투자했다가 1천억을 손실본 적이 있는데요.. [10] nexon4602 25/05/11 4602
180572 [질문] 모니터 케이블 질문입니다 [2] 월터화이트3356 25/05/11 3356
180571 [질문] 갤럭시 워치로 사진 보기 [5] ELESIS2567 25/05/11 2567
180570 [질문] 러닝 호흡 및 관련 질문 몇 가지 드려요. [3] 기억의습작2226 25/05/11 2226
180568 [질문] 꿈 속에서 80대의 내가 쓰러져 있었다. 아무도 발견하지 못했다. [13] 계신다2784 25/05/11 2784
180567 [질문] AI 활용해서 논문 쓸 때 고비가 참고문헌 작성이네요. [14] 소오강호3860 25/05/11 3860
180566 [질문] 스타 부대지정이 계속 풀리는데 뭐가 문제일까요. 8억빠3640 25/05/11 3640
180565 [질문] 선게 댓글 모바일 질문 [5] 제논5272 25/05/10 5272
180564 [질문] 디딤돌대출 한 달 이상 걸리신 분 계실까요? [12] Aiurr6449 25/05/09 6449
180563 [질문] 바둑을 배울 때 어떻게 시작해야 하나요?? [43] 완성형폭풍저그7071 25/05/09 7071
180562 [질문] 선결제 후 폐업 (휴업?) 대처법 [10] 양상군자6570 25/05/09 6570
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로