Ubuntu16.04 ROS Kinetic安装pip以及pyomo模块
作者:互联网
日期:2021/12/07
1、原因
使用ROS进行算法开发,运行py文件后出现模块输入错误:ImportError: No module named pyomo.environ
使用sudo apt-get install pyomo
出现错误:E: Unable to locate package pyomo;使用sudo apt-get update
后依然出现上述问题,则使用命令pip show pyomo
搜索系统是否安装了这个包;
在使用pip命令时,出现了错误sys.stderr.write(f"ERROR: {exc}"),则代表系统未安装这个工具,或者当前版本不支持Kinnetic自带的python版本。
使用python
可查询当前系统默认使用的python版本,Kinetic一般使用的是python2.7.12;使用pip --version
查询pip工具版本发现还是出现错误sys.stderr.write(f"ERROR: {exc}")则代表未安装pip
2、pip安装
安装过程:
(1)下载安装脚本:curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
(2)安装pip:sudo python get-pip.py
依据网上所说,这是默认关联到python2的版本,如果使用sudo python3 get-pip.py
则是关联到python3的版本;
但是我执行sudo python get-pip.py
后出现错误ERROR: This script does not work on Python 2.7 The minimum supported Python version is 3.6. Please use https://bootstrap.pypa.io/pip/2.7/get-pip.py instead.则说明我在第一步获取安装脚本的时候出现错误;
(3)按提示执行curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py
后执行sudo python get-pip.py
提示Successfully installed pip-20.3.4,但是我继续执行pip --version
后依旧出现 sys.stderr.write(f"ERROR: {exc}")此处还未明白为什么还是报错
(4)既然仍然有错误,我就获取3.5的版本:curl https://bootstrap.pypa.io/pip/3.5/get-pip.py -o get-pip.py
并执行sudo python3 get-pip.py
安装成功后,执行pip --version
正常显示版本号,表明安装从成功!
3、解决pyomo不存在的问题
Pyomo是一个基于python的开源软件包,它支持多种优化功能,用于制定和分析优化模型
官网简介http://www.pyomo.org
(1)根据介绍pyomo自6.0版本后就不支持python2.7了,我安装的是5.7.3版本,执行pip install Pyomo==5.7.3
安装;
(2)安装完毕后,运行文章开头所述py文件依然出现ImportError: No module named pyomo.environ,使用pip show pyomo
查询pyomo模块所在位置,结果为 /home/robot/.local/lib/python3.5/site-packages,则表明应该是程序运行时,未将该模块加入python的搜索路径
(3)在在py文件上加入以下代码
import sys
sys.path.append('/home/robot/.local/lib/python3.5/site-packages')
添加后则错误消失。
标签:Ubuntu16.04,get,python,py,pip,pyomo,安装 来源: https://blog.csdn.net/qq_34828179/article/details/121769027