Интересно, есть ли способ открыть консоль 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 Python открывалась при запуске QGIS , вы можете создать (если он еще не существует) startup.py
файл %APPDATA%\QGIS\QGIS3\
и написать:
import qgis
qgis.utils.iface.actionShowPythonDialog().trigger()
РЕДАКТИРОВАТЬ (чтобы ответить на следующий вопрос @Miro)
Как отметил Миро, если QGIS Python Console открыта, qgis.utils.iface.actionShowPythonDialog().trigger()
закроет ее, поэтому, если мы пишем плагин QGIS, возможно, имеет смысл узнать, открыта ли Python Console (видимая) или нет.
Вы можете узнать, не видна ли консоль 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()