• cygwin执行.py提示找不到模块,但已经安装模块的解决办法


    、  在解决了cygwin中make命令不能使用的问题之后(https://www.cnblogs.com/zhenggege/p/10724122.html),make maskrcnn路径下的setup.py,提示错误:make**error 1: no module named setuptools

      这个.py文件里有两句import代码:

    1 from setuptools import setup, Extension
    2 import numpy as np

      既然没有setuptools模块那就安装吧,于是到python官网下载setuptools的zip包:https://pypi.org/project/setuptools/

      

      解压后执行以下指令(不要问我为什么不直接pip install,我也不知道):

      

      安装成功!再进行一遍make,还是提示错误:make**error 1: no module named numpy

      说明setuptools安装成功,但第二句import还是错误,这就奇怪了,因为之前实现AlphaPose已经安装过numpy,怎么会找不到模块?

      于是我运行pip install,但显示numpy已安装:

      

      是不是安装不完整,或者被破坏了?于是我pip uninstall,再重新pip install,依然提示找不到numpy。

      我打开cmd,进入python,import numpy,没有报错,导入成功!说明在cmd下numpy是安装成功的,但在cgywin下没有安装或者安装失败。

      

      这里就要推荐一个英文网站stack overflowhttps://stackoverflow.com/,我遇到的问题在这里都能有很好的解答或思路。最终我在how to use numpy with cygwin问题中得到了答案:

      

      原来windows python和cygwin python是独立的,在windows pip install的numpy包,cygwin是不能使用的。在cygwin进入python环境,发现python是2.7版本,和windows的3.6版本是不一样的:

      

      所以我们在cygwin pip install,对应的是python3版本的,不是2.7的。  

      接下来我借鉴了博文:win10环境下cygwin的安装以及opencv/python/pip等环境的搭建,进入cygwin重新安装了python2.7对应的pip2包,安装用命令pip2 install numpy:

      

      成功安装了对应的numpy版本。此时再次import numpy,可以看到导入成功了。

      

      回头来看,第一次安装setuptools没有出现问题的原因应该是没有用pip安装,而是使用了python setup.py install,系统自动安装了匹配python2.7的setuptools。

      

      

  • 相关阅读:
    [Swift]LeetCode843. 猜猜这个单词 | Guess the Word
    [Swift]LeetCode852. 山脉数组的峰顶索引 | Peak Index in a Mountain Array
    [Swift]LeetCode867. 转置矩阵 | Transpose Matrix
    [Swift]LeetCode859. 亲密字符串 | Buddy Strings
    [Swift]LeetCode844. 比较含退格的字符串 | Backspace String Compare
    [Swift]LeetCode824. 山羊拉丁文 | Goat Latin
    PHP 分析1
    php 分析
    停下库
    常用sql
  • 原文地址:https://www.cnblogs.com/zhenggege/p/10724419.html
Copyright © 2020-2023  润新知