【问题标题】:Setting up Jupyter Notebook for JModelica为 JModelica 设置 Jupyter Notebook
【发布时间】:2018-03-01 14:29:14
【问题描述】:

我想使用 Jupyter Notebook 来编辑 JModelica python 脚本;但是安装后,Jupyter notebook 找不到关键库,例如 pymodelica。

这是我为 JModelica 2.1 版安装 Jupyter Notebook 所遵循的过程:

  1. 在 IPython 终端中:!pip install jupyter

  2. 在 windows CMD 中,我使用 cd C:\JModelica.org-2.1\Python27\Scripts 导航

  3. 然后我使用jupyter notebook打开

  4. 在笔记本中,我创建了一个 Python 2 文件并尝试导入 pymodelica 库,然后是:

ImportError Traceback(最近调用 最后)在() ----> 1个导入pymodelica

ImportError: 没有名为 pymodelica 的模块

推测 Jupyter Notebook 是从安装了 JModelica 的 Python Kernal 运行的,在这种情况下,为什么 Jupyter Notebook 无法找到 pymodelica 库?为了让 Jupyter 加载这些库,是否需要更改任何设置?

【问题讨论】:

    标签: jupyter-notebook modelica jmodelica


    【解决方案1】:

    您需要指示 Python 在哪里可以找到 JModelica.org 特定的 Python 包。最简单的方法是在启动 jupyter 之前运行 C:\JModelica.org-2.1\setenv.bat

    【讨论】:

    • 这成功了。这可能是不相关的,需要单独的帖子,但可以应用类似的逻辑来让 Spyder 与 JModelica 一起工作吗?
    • 太棒了!是的,一般来说,当您需要运行 JModelica.org 时,您需要运行 setenv.bat。这样做的原因是它设置了几个环境变量并将 JModelica.org 特定路径添加到 JModelica.org 运行所需的 PATH 和 PYTHONPATH。
    【解决方案2】:

    除了@Jon Smentioned之外,我想补充一点,如果您收到类似的错误消息,您需要将环境设置为64位版本

    ---------------------------------------------------------------------------
    ImportError                               Traceback (most recent call last)
    <ipython-input-1-907558296850> in <module>()
    ----> 1 import pyfmi
    
    C:\JModelica.org-2.10\install\Python\pyfmi\__init__.py in <module>()
         22 
         23 #Import the model class allowing for users to type: from pyfmi import FMUModel
    ---> 24 from .fmi import FMUModel, load_fmu, FMUModelME1, FMUModelME2
         25 from .fmi import FMUModelCS1, FMUModelCS2
         26 from .fmi_coupled import CoupledFMUModelME2
    
    ImportError: DLL load failed: %1 is not a valid Win32 application.
    

    在导入任何 JModelica 包时。这样做:

    1. 打开一个 Windows 终端(cmd、PowerShell、ConEmu...)
    2. 导航到 JModelica 安装文件夹(例如,cd C:\JModelica.org-2.10C:\Users\&lt;user&gt;\AppData\Roaming\JModelica.org-2.10,如果您使用 Chocolatey 安装)
    3. 运行setenv.bat 64

    现在您应该可以导入所有 JModelica 包了。

    P.S. 对于有兴趣了解和了解更多有关 JModelica 的其他人 here 我写了一个小教程并收集了许多有用的参考。

    【讨论】:

    • 好点,我想我的答案是在添加 64 位支持之前写的。如果我没记错的话,也应该有一个 setenv_64.bat(我一年多前离开了这个项目,所以事情可能已经改变了)。
    • @JonS 感谢您的回复。知道现在负责 JModelica 项目的是谁吗? The forum 也下架了!我已经联系了Modelon内部的几个人,目前没有回复。 ¯\_(ツ)_/¯
    猜你喜欢
    • 1970-01-01
    • 2016-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-29
    • 2016-09-18
    • 2018-04-25
    • 2020-03-03
    相关资源
    最近更新 更多