创建Python-MIP模型时触发AttributeError: NoneType无split属性
解决Python-MIP初始化Model时的AttributeError问题
问题重现
执行以下代码时触发错误:
from mip import Model, BINARY m = Model()
报错信息:
AttributeError: 'NoneType' object has no attribute 'split'
报错栈指向mip/gurobi.py第75行,原因是lib_path为None,调用split()方法失败。
解决方案
这个问题是Python-MIP无法定位Gurobi安装路径导致的,可按以下步骤排查解决:
检查Gurobi环境变量配置
确认GUROBI_HOME环境变量已设置为你的Gurobi安装目录(例如Windows下可能是C:\gurobi1000\win64,Linux下为/opt/gurobi1000/linux64),同时将GUROBI_HOME/bin添加到系统PATH变量中。验证Gurobi可正常调用
在终端/命令行中执行gurobi.sh(Linux/macOS)或gurobi.bat(Windows),若能启动Gurobi交互环境,说明安装路径无问题。手动指定Gurobi库路径
若环境变量配置后仍无效,可在代码中手动设置Gurobi库文件路径:import mip # 替换为你的Gurobi库文件路径,比如Linux下的libgurobi100.so,Windows下的gurobi100.dll mip.gurobi.set_gurobi_lib_path("/path/to/gurobi/library/file") from mip import Model, BINARY m = Model()确认版本兼容性
检查Python-MIP版本与Gurobi版本是否匹配,例如Gurobi 10.x建议搭配Python-MIP 1.15及以上版本。重新安装Python-MIP
若上述步骤均无效,尝试卸载后重新安装:pip uninstall mip -y pip install mip
内容的提问来源于stack exchange,提问作者TOm_99
相关产品推荐
相关产品推荐

