중요
번역은 여러분이 참여할 수 있는 커뮤니티 활동입니다. 이 페이지는 현재 100.00% 번역되었습니다.
29.3. QGIS 파이썬 콘솔
이 장을 보다 보면 알게 되겠지만, QGIS는 플러그인 아키텍처로 설계되어 있습니다. 플러그인은 지리공간 업계에서는 매우 유명한 언어인 파이썬으로 작성할 수 있습니다.
QGIS는 사용자가 객체(레이어, 피처, 인터페이스)와 대화형 작업을 할 수 있도록 파이썬 API(예시 코드를 보고 싶다면 PyQGIS 개발자 쿡북 을 참조)를 제공합니다. 물론 QGIS에는 파이썬 콘솔도 있습니다.
QGIS 파이썬 콘솔은 파이썬 명령어 실행을 위한 대화형 셸(shell)입니다. 그리고 사용자가 파이썬 스크립트를 편집하고 저장할 수 있는 파이썬 파일 편집기가 있습니다. 콘솔과 편집기 모두 PyQScintilla2 패키지를 기반으로 합니다. 콘솔을 열려면
(Ctrl+Alt+P) 메뉴 옵션을 선택하십시오.29.3.1. 대화형 콘솔
이 콘솔은 사용자가 파이썬 명령어를 실행할 수 있게 해주는 파이썬 해석기입니다. QGIS(analysis, core, gui, server, processing, 3d)와 Qt(QtCore, QtGui, QtNetwork, QtWidgets, QtXml)의 모듈은 물론 파이썬의 math, os, re 및 sys 모듈이 이미 구현되어 있기 때문에 직접 사용할 수 있습니다.
대화형 콘솔은 툴바, 입력 영역 그리고 출력 영역으로 이루어져 있습니다.
29.3.1.1. 툴바
툴바는 다음 도구들을 제공합니다:
Show Editor: 코드 편집기 를 켜고 끕니다.
Options…: 콘솔 속성 을 환경설정할 수 있는 대화창을 엽니다.
Help…: 여러 문서에 접근할 수 있는 메뉴를 제공합니다:
파이썬 콘솔 도움말 (현재 페이지)
29.3.1.2. 입력 영역
콘솔 입력 영역의 주요 기능은 다음과 같습니다:
다음 API들을 위한 코드 완성, 문법 구문 강조, 그리고 팝업 도움말:
파이썬
PyQGIS
PyQt5
QScintilla2
osgeo-gdal-ogr
Ctrl+Alt+Space: 파이썬 콘솔 설정 에서 활성화하면 사용할 수 있는 자동 완성 목록 보기
출력 영역에서 컨텍스트 메뉴의 Run Selected 를 선택하거나 Ctrl+E 조합키를 눌러 코드 조각 실행하기
입력 영역에서 Up 및 Down 방향키를 눌러 명령어 이력을 탐색하고 원하는 명령어 실행하기
Ctrl+Shift+Space 조합키로 명령어 이력 살펴보기: 어느 행을 더블클릭하면 해당 명령어를 실행합니다. 입력 영역에서 컨텍스트 메뉴를 통해 Command History 대화창을 열 수도 있습니다.
명령어 이력 저장 및 삭제: 명령어 이력은 활성화된 사용자 프로파일 폴더 아래
console_history.txt
파일로 저장됩니다.다음 특수 명령어들을 입력하십시오:
?
: 파이썬 콘솔 도움말을 출력합니다._api
또는_api(object)
: 전자는 QGIS C++ API 문서를 열고 후자는 (QGIS C++ API 또는 Qt API 문서에 있는) 특정 객체 문서를 엽니다._pyqgis
또는_pyqgis(object)
: 전자는 QGIS Python API 문서를 열고 후자는 (QGIS Python API 또는 Qt API 문서에 있는) 특정 객체 문서를 엽니다._cookbook
: PyQGIS 쿡북 을 엽니다.!
: 명령어 앞에 느낌표를 붙이면 파이썬 콘솔에서 셸(Shell) 명령어를 실행할 수 있습니다. 콘솔이 하위 프로세스를 시작해서 그 산출물을 파이썬 콘솔 산출물로 포워딩할 것입니다. 하위 프로세스가 실행되는 동안, 파이썬 콘솔 입력은 표준 입력(STDIN) 모드로 전환되어 입력되는 문자들을 하위 프로세스로 포워딩합니다. 즉 하위 프로세스가 확인을 요청할 때 이를 전송해줄 수 있습니다. 콘솔이 STDIN 모드일 때 Ctrl+C 조합키를 누르면 하위 프로세스를 중단시킵니다.var = !cmd
구문을 사용하면 변수에 대한 명령어 결과에 영향을 줄 수도 있습니다.>>> !echo QGIS Rocks! QGIS Rocks >>> !gdalinfo --version GDAL 3.6.2, released 2023/01/02 >>> !pip install black # Install black python formatter using pip (if available) >>> sql_formats = !ogrinfo --formats | grep SQL >>> sql_formats ['SQLite -vector- (rw+v): SQLite / Spatialite', ' MSSQLSpatial -vector- (rw+): Microsoft SQL Server Spatial Database', ' PostgreSQL -vector- (rw+): PostgreSQL/PostGIS', ' MySQL -vector- (rw+): MySQL', ' PGDUMP -vector- (w+v): PostgreSQL SQL dump']
팁
출력 패널에서 실행한 명령어 재사용
출력 패널에서 일부 텍스트를 선택한 다음 Ctrl+E 조합키를 누르면 코드 조각을 실행할 수 있습니다. 선택한 텍스트가 인터프리터 프롬프트(>>>
, ...
)를 담고 있어도 상관없습니다.
29.3.2. 코드 편집기
편집기 위젯을 활성화하려면 Show Editor 버튼을 클릭하십시오. 편집기는 파이썬 파일을 편집하고 저장할 수 있으며, 사용자 코드를 관리하기 위한 고급 기능들(코드 주석 추가 및 삭제, 문법 확인, GitHub를 통해 코드 공유 등등)을 제공합니다. 주요 기능은 다음과 같습니다:
다음 API들을 위한 코드 완성, 문법 구문 강조, 그리고 팝업 도움말:
파이썬
PyQGIS
PyQt5
QScintilla2
osgeo-gdal-ogr
Ctrl+Space: 자동 완성 목록 보기
GitHub 를 통해 코드 조각 공유
Ctrl+4: 문법 확인하기
검색란 (데스크탑 환경 기본 단축키로 엽니다. 일반적으로 Ctrl+F 조합키를 누르면 됩니다.):
데스크탑 환경 기본 단축키(Ctrl+G 및 Shift+Ctrl+G)를 사용해서 다음/이전 찾기
검색창 입력 시 첫 번째 일치 항목을 자동으로 찾기
검색창을 열 때 처음 찾은 문자열을 선택하도록 설정하기
Esc 키를 눌러 검색창 닫기
객체 조사기: 클래스 및 함수 탐색기
마우스 클릭으로 객체 정의로 가기 (객체 조사기에서)
컨텍스트 메뉴의 Run Script 를 선택해서 전체 스크립트를 실행하기 (이렇게 하면
.pyc
확장자를 가진 바이트코드 파일을 컴파일합니다.)
참고
코드 편집기에서 스크립트 일부 또는 전체를 실행하면 콘솔의 출력 영역에 결과를 산출합니다.
팁
옵션 저장하기
콘솔 위젯 상태를 저장하려면, 닫기 버튼을 사용해서 파이썬 콘솔을 종료해야 합니다. 이렇게 하면 다음 시작 시 도형이 복구되도록 저장할 수 있습니다.