Цікаво, чи є спосіб відкрити консоль Python безпосередньо при запуску програми. Існує можливість встановити ярлик для консолі Python, але я не можу знайти такий варіант для запуску програми QGIS.
Цікаво, чи є спосіб відкрити консоль Python безпосередньо при запуску програми. Існує можливість встановити ярлик для консолі Python, але я не можу знайти такий варіант для запуску програми QGIS.
Відповіді:
Ви можете запустити консоль QGIS Python під час відкриття проекту , написавши пару рядків QGIS->Project->Project Properties
:
def openProject():
import qgis
qgis.utils.iface.actionShowPythonDialog().trigger()
Переконайтеся, що ви ввімкнули макроси для свого проекту таким чином: Settings->Options->General->Enable macros: Always
Оскільки ви хочете, щоб при запуску QGIS відкрилася консоль QGIS Python , ви можете створити (якщо він ще не існує) startup.py
файл у %APPDATA%\QGIS\QGIS3\
та записати:
import qgis
qgis.utils.iface.actionShowPythonDialog().trigger()
EDIT (для вирішення подальшого запитання від @Miro)
Як зазначив Міро, якщо консоль QGIS Python відкрита, qgis.utils.iface.actionShowPythonDialog().trigger()
вона закриє її, тому, якщо ми пишемо плагін QGIS, можливо, має сенс знати, відкрита (видима) консоль Python чи ні.
Ви можете дізнатися, чи консоль Python не видно (а потім відкрийте), запустивши цей код:
from qgis.PyQt.QtWidgets import QDockWidget
pythonConsole = iface.mainWindow().findChild(QDockWidget, 'PythonConsole')
if not pythonConsole or not pythonConsole.isVisible():
from qgis.utils import iface
iface.actionShowPythonDialog().trigger()