我想从QGIS的“外部”为QGIS(Mac)运行一些小型而简单的python脚本。在这种情况下,外部是指普通的os命令行(terminal.app)甚至更好,直接从Sublime Text(文本编辑器)中退出,但绝对不是通过内置的QGIS python控制台。
我已经阅读了各种教程,例如http://www.qgis.org/pyqgis-cookbook/intro.html#python-applications,并且能够获得对QGIS应用程序的引用,但不幸的是,我没有得到它qgis.utils.iface
或更深层次的介绍。例如,这个小代码段应打印出活动层的名称...这是我所拥有的:
import sys
sys.path.append("/Applications/QGIS.app/Contents/Resources/python")
from qgis.core import *
import qgis.utils
print "helo" # console output: helo
QgsApplication.setPrefixPath("/Applications/QGIS.app/", True)
QgsApplication.initQgis()
print QgsApplication # console output: <class 'qgis.core.QgsApplication'>
print qgis.utils.iface # = console output: none
aLayer = qgis.utils.iface.activeLayer()
print aLayer.name()
QgsApplication.exitQgis()
现在请不要回复我如何创建插件或其他“繁重的”东西。我只是在寻找一种快速简便的方法来将脚本从舒适的文本编辑器中拍摄到QGIS。
4
。在此期间,我不得不与一起住2
,这一直是一个痛苦的过程,import script
其后一直是reload(script)
我的编辑器向QGIS的转变。我还检查了scriptrunner插件,该插件很有前途,但后来我无法将其print "debug value"
插入QGIS控制台。您是否知道如何让scriptrunner脚本将某些内容打印到QGIS控制台?非常感谢!将等待您的答复,然后关闭问题!