일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- ROS Package 생성
- Object Orient
- argparse 사용법
- Class(Object)
- Python for range
- python for
- 객체지향
- ROS Package 이름
- argparse
- ROS Package 명
- Object 상속
- Python list 내 for
- Python for list
- ROS Package 만들기
- ROS Node 만들기
- python
- Today
- Total
일단해봐
[PyCharm] PyCharm 모듈 실행 모드(-m mod) 설정하기 본문
이 글은 명령어는 DBB Data Set 예제 돌려보기를 위한 CMD 명령어 입니다. 그냥 예시로 생각하세요.
Python Interpreter 에서 늘 아래와 같은 CMD로 실행던했 Code가 있다 하자. PyCharm을 이용해 이 Code를 Debug 하고 싶다 가정하자.
python -m bdd100k.vis.labels --image-dir bdd100k/images/100k/train -l bdd100k/labels/bdd100k_labels_images_train.json
CMD를 보면 -m 이 붙고 bdd100k.vis.labels 와 같이 comma가 들어간 조금 신기한 명령문이다. -m 옵션의 정체는 Module Mod를 정의 하는 옵션이다. Module Mod는 특정 Module을 실행 시 "지금 실행하는 Code는 특정 경로의 Module 입니다" 라고 Interpreter에게 알려주는 Mode 이다. (이러한 -m 옵션을 왜쓰는 지는 나중에 다른 포스트에 설명 예정)
앞에서 말한것 처럼 예제에나오는 CMD를 복붙해서 사용하다 보니 사실 앞에 -m 옵션이 있다는 것도 PyCharm에서 실행해보고 알았다.
저 -m 옵션을 안붙이면 " importerror: attempted relative import with no known parent package" 에러가 난다. (이 에러에 대한 설명은 다른 포스트에 설명 예정)
자 그래서 아무튼 저 -m 옵션을 PyCharm에서 그대로 넣어 줘야 한다.
방법은 우선 아래 그림 처럼 [Run] -> [Eidt Configuration]을 실행 한다.

Eidt Configuration 창이 뜨면 아래 그림 처럼 [Script Path] 부분을 클리하여 [Module name] 으로 변경 후 -m을 붙여 실행하고자 하는 Module의 경로와 이름을 적어 준다.

이게 끝이다. 매우 심플!
PyCharm에서 실행 결과를 보면 아래 그림 처럼 원하는데로 -m을 붙여 실행 명령을 했음을 알수 있다.

'Python' 카테고리의 다른 글
[Python] 클래스(Class) 선언 시 Object 상속 하는 경우? [Class(Object) ?] (0) | 2021.04.19 |
---|---|
[Python] 객체 지향(Object Oriented)이 뭐지? (0) | 2021.04.18 |
[Python] Class 기본 사용법 (0) | 2021.04.18 |
[Pycharm] Pycharm 실행 시 argument 넣기 (0) | 2021.04.17 |
[Python] argparse 사용법, 예제 (0) | 2021.04.16 |