2

我正在尝试开始使用 Python 编写 GRASS 脚本,我想我会使用 Ipython 笔记本,因为我熟悉它们。我在 youtube 上关注教程,但是当我尝试在草地命令窗口中启动 Ipython notebook 时 Python 崩溃(请参阅大约 10 分钟的视频)。错误信息是:

致命的 Python 错误:Py_Initialize:无法加载文件系统编解码器

可能的线索:我在笔记本中使用 Python 3.5,而 GRASS 显然使用 Python 2.7。

4

1 回答 1

1

最好的方法是ipython notebook从系统命令控制台(终端)启动命令,该控制台已经在运行 GRASS GIS 会话(GRASS GIS 用 ASCII 字符编写的会话),如相关教程中所述。这在 GUI 中的命令控制台(主要用于执行 GRASS GIS 模块)中无法正常工作。据我了解,您已经以正确的方式这样做了。

您对当前支持 Python 2.7 而不是 Python 3 的 GRASS GIS 是正确的。我认为,在一般情况下和在这种情况下,以这种方式混合 Python 2.7 和 Python 3.x 是不可能的。将 IPython 用于 Python 2.7 是可行的方法。这取决于如何在您的系统上安装 GRASS GIS 和 IPython,但是 Linux 发行版包中的 GRASS GIS 将被配置为使用正确的 Python 并且为 Python 版本 2 安装 IPython 可能只是安装正确的包(ipython-notebookipython3-notebook我的情况下) )。

GRASS GIS(主干)的开发版本包含对 Python 3 的一些实验性支持(不是为了学习,而是为了进一步开发)。您需要先配置 GRASS GIS 以使用 Python 3 运行。随意对其进行测试和改进,并写下您到达草地开发邮件列表的程度,或者在补丁或特定错误的情况下提交票证

于 2015-11-23T02:26:51.150 回答