我的系统上有 Matlab2013b:
C:\Program Files\MATLAB\R2013b\bin
我正在编写Python脚本,首先在此位置搜索Matlab.exe,然后在64位位置搜索Matlab.exe。
Python 脚本将在可能具有 64 位而不是 32 位的服务器上运行。所以,我需要搜索这两个位置。
由于我的机器上没有 64 位版本,所以我不知道位置。
我推测它会是:
C:\Program Files (x86)\MATLAB\R2013b\bin
但是有人能证实这一点吗?
谢谢
塞迪
最佳答案
您可以读出环境变量PATH(我想说它很确定MATLAB包含它)并使用一些字符串操作来获取Matlab路径:
import os
path = os.environ.get('path')
pathlist = path.split(';')
matlabpath = [s for s in pathlist if all(x in s for x in ['MATLAB','R','bin'])]
print(matlabpath)
这样您就不需要推测我认为通常不好的编程实践。
<小时/>就我而言,同一路径上还有一个工具箱 polyspace,您需要排除它:
matlabpath = [s for s in pathlist if all(x in s for x in ['MATLAB','R','bin']) and not 'polyspace' in s]
可能还有其他工具箱将自身写入路径 - 排除所有这些工具箱可能很麻烦,因此最简单的方法是返回所有与 Matlab 相关的路径中最短的一个:
import os
path = os.environ.get('path')
pathlist = path.split(';')
matlabpath = min([s for s in pathlist if 'MATLAB' in s], key=len)
print(matlabpath)
关于python - 64 位上的 Matlab 安装目录是什么,或者如何在 Python 中获取它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32337950/