跳转到主要内容

'Python到GNU Octave桥梁 --> 从Python运行m文件'。

项目描述

https://badge.fury.io/py/oct2py.png/ https://codecov.io/github/blink1073/oct2py/coverage.svg?branch=main PyPi Download stats

Oct2Py 允许您无缝地从Python调用M文件和Octave函数。它为您管理Octave会话,在幕后通过MAT文件共享数据。使用方法非常简单,就像

>>> import oct2py
>>> oc = oct2py.Oct2Py()
>>> x = oc.zeros(3, 3)
>>> print(x, x.dtype)
[[0. 0. 0.]
 [0. 0. 0.]
 [0. 0. 0.]] float64

要运行.m函数,您需要明确使用以下方法添加.m文件的路径:

>>> from oct2py import octave
>>> # to add a folder use:
>>> octave.addpath("/path/to/directory")  # doctest: +SKIP
>>> # to add folder with all subfolder in it use:
>>> octave.addpath(octave.genpath("/path/to/directory"))  # doctest: +SKIP
>>> # to run the .m file :
>>> octave.run("fileName.m")  # doctest: +SKIP

在设置路径后,要获取.m文件的结果,请使用以下方法:

>>> import numpy as np
>>> from oct2py import octave
>>> x = np.array([[1, 2], [3, 4]], dtype=float)
>>> # use nout='max_nout' to automatically choose max possible nout
>>> octave.addpath("./example")  # doctest: +SKIP
>>> out, oclass = octave.roundtrip(x, nout=2)  # doctest: +SKIP
>>> import pprint  # doctest: +SKIP
>>> pprint.pprint([x, x.dtype, out, oclass, out.dtype])  # doctest: +SKIP
[array([[1., 2.],
        [3., 4.]]),
    dtype('float64'),
    array([[1., 2.],
        [3., 4.]]),
    'double',
    dtype('<f8')]

如果您想运行旧版 m 文件,没有 MATLAB®,并且不完全信任代码转换器,这个库就是您的选择。

功能

  • 支持所有 Octave 数据类型以及大多数 Python 数据类型和 Numpy 数据类型。

  • 为 IPython 提供 OctaveMagic,包括笔记本中的内联绘图。

  • 支持任意嵌套的单元数组和结构体/结构体数组。

  • 支持稀疏矩阵。

  • 动态构建与 Octave 命令相关的方法(例如上面的 zeros)。

  • 线程安全:每个 Oct2Py 对象都使用独立的 Octave 会话。

  • 可以作为上下文管理器使用。

  • 支持 Unicode 字符。

  • 支持记录会话命令。

  • 可选的超时命令参数,用于防止 Octave 会话无限期运行。

安装

您必须安装 GNU Octave 并将其添加到您的 PATH 环境变量中。或者,您可以将 OCTAVE_EXECUTABLEOCTAVE 环境变量设置为指向 octave 可执行文件的路径。

您必须安装 Python 的 Numpy 和 Scipy 库。有关更多安装信息,请参阅安装说明

一旦安装了依赖项,请运行

$ pip install oct2py

如果使用 conda,它可在 conda-forge 上找到

$ conda install -c conda-forge oct2py

文档

文档可在 网上 获取。

有关版本信息,请参阅变更日志

项目详情


发布历史 发布通知 | RSS 源

下载文件

下载适合您平台的文件。如果您不确定该选择哪一个,请了解更多关于 安装包 的信息。

源代码分发

oct2py-5.7.2.tar.gz (441.4 kB 查看散列值)

上传时间 源代码

构建分发

oct2py-5.7.2-py3-none-any.whl (29.1 kB 查看哈希值)

上传时间: Python 3

由以下支持

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF赞助商 PingdomPingdom 监控 SentrySentry 错误日志 StatusPageStatusPage 状态页面