我想从matlab调用python3.4。默认版本是python2.7,当我在matlab中运行pyversion时,它显示:
version: '2.7'
executable: '/usr/bin/python'
library: 'libpython2.7.so.1.0'
home: '/usr'
isloaded: 0
我用matlab中的runpy.list()
进行了测试,它可以工作。在
然后我想将版本更改为python3,所以我运行
^{pr2}$更改python的版本。在
但是现在py.list()
不能工作了,就是说Undefined variable "py" or class "py.list".
。
另外,现在我运行pyversion
,信息显示:
version: '3.4'
executable: '/usr/bin/python3.4'
library: ''
home: '/usr'
isloaded: 0
“图书馆”变空了。在
如何解决这个问题才能正确运行python3.4?在
我使用Ubuntu14.04,并为python3.4安装了Cython。我通过运行find /usr/lib -name libpython*
得到以下输出
/usr/lib/python3.4/config-3.4dm-x86_64-linux-gnu/libpython3.4.so
/usr/lib/python3.4/config-3.4dm-x86_64-linux-gnu/libpython3.4dm.so
/usr/lib/python3.4/config-3.4dm-x86_64-linux-gnu/libpython3.4dm.a
/usr/lib/python3.4/config-3.4m-x86_64-linux-gnu/libpython3.4.so
/usr/lib/python3.4/config-3.4m-x86_64-linux-gnu/libpython3.4m.a
/usr/lib/python3.4/config-3.4m-x86_64-linux-gnu/libpython3.4m.so
/usr/lib/python3.4/config-3.4m-x86_64-linux-gnu/libpython3.4m-pic.a
/usr/lib/python2.7/config-x86_64-linux-gnu/libpython2.7.so
/usr/lib/python2.7/config-x86_64-linux-gnu/libpython2.7.a
/usr/lib/python2.7/config-x86_64-linux-gnu/libpython2.7-pic.a
/usr/lib/libpeas-1.0/loaders/libpython3loader.so
/usr/lib/libpeas-1.0/loaders/libpythonloader.so
/usr/lib/debug/usr/lib/libpython3.4m.so.1.0-gdb.py
/usr/lib/debug/usr/lib/x86_64-linux-gnu/libpython3.4m.so.1.0
/usr/lib/libreoffice/program/libpythonloaderlo.so
/usr/lib/x86_64-linux-gnu/libpython3.4m.so.1
/usr/lib/x86_64-linux-gnu/libpython3.4dm.so.1
/usr/lib/x86_64-linux-gnu/libpython3.4m.a
/usr/lib/x86_64-linux-gnu/libpython2.7.so
/usr/lib/x86_64-linux-gnu/libpython3.4m.so
/usr/lib/x86_64-linux-gnu/libpython3.4dm.so.1.0
/usr/lib/x86_64-linux-gnu/libpython2.7.a
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1
/usr/lib/x86_64-linux-gnu/libpython3.4m.so.1.0
/usr/lib/x86_64-linux-gnu/libpython3.4dm.so
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
/usr/lib/x86_64-linux-gnu/libpython3.4dm.a
我遇到了一个类似的问题(R2015b,Ubuntu),但没有用公认的答案来解决它。我不得不执行死刑
而不需要从命令行修改它。在
恰好在这篇文章的5天内也有同样的问题。在
显然,matlab使用以下脚本搜索库:
MATLABROOT/toolboot/matlab/external/interfaces/python/+python/+internal/pyinfo.py在
其中MATLABROOT是您在安装matlab时选择的。在
理论上,你可以编辑pyinfo.py在搜索中包含“/usr/lib/x86_64-linux-gnu”。例如,在只返回'/usr/lib/x86_64-linux-gnu'的搜索位置追加一个方法。但我不知道这会对许可/法律/保修产生什么影响,所以请自行决定使用。在
相关问题 更多 >
编程相关推荐