Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python找不到已安装的模块_Python_Virtualenv - Fatal编程技术网

Python找不到已安装的模块

Python找不到已安装的模块,python,virtualenv,Python,Virtualenv,在虚拟环境中调用Python3.5时,找不到已安装的模块 创建虚拟环境:python3.5-m venv-autogit/venv&&cd-autogit source-venv/bin/activate 哪个python==…autogit/venv/bin/python 奇怪,应该是蟒蛇3.5 将我的python源代码添加到/autogit和pip freeze>requirements.txt pip安装-r requirements.txt ls-venv/lib/python3.5/s

在虚拟环境中调用Python3.5时,找不到已安装的模块

  • 创建虚拟环境:
    python3.5-m venv-autogit/venv&&cd-autogit
  • source-venv/bin/activate
  • 哪个python
    ==
    …autogit/venv/bin/python
    奇怪,应该是蟒蛇3.5
  • 将我的python源代码添加到
    /autogit
    pip freeze>requirements.txt
  • pip安装-r requirements.txt
  • ls-venv/lib/python3.5/site-packages
    显示了
    request-0-0-0-py3.5.egg-info
    和一些其他内容
  • 由于依赖项安装在python3.5和
    下,而不是
    python3.5
    ,因此让我们显式调用python3.5二进制<代码>venv/bin/python3.5 autogit.py
    获取导入错误:没有名为“请求”的模块
  • ???如果不是在我的虚拟环境中,python会在哪里寻找包

    更新上述问题仍未解答;以下是我从那时起注意到的事情以及我使用的解决方法:

    • pip安装
      生成了一个文件
      request-0-0-py3.5.egg info
      。它没有生成包含此模块的源代码或二进制文件的实际
      请求
      目录。还有为什么版本0是可疑的

    • 在谷歌搜索之后,我注意到我想要的模块似乎被命名为
      requests
      而不是
      request
      ,这就是我的源代码。我更改了it请求,
      pip安装
      ,一切正常。很难看出有错误,因为
      pip安装
      ing
      request
      没有失败


    您是否安装了其他Python版本?这可能就是问题所在


    尝试使用
    pip3
    而不是
    pip

    启动python,
    import sys;print(sys.path)
    我做了与您完全相同的事情,在venv/lib/python3.5/site-packages中找到了“请求”,所以可能是一些操作系统设置遗漏了或丢失了sth@kindall
    ['',/Users/xxx/Documents/ab/dev/autogit/venv/lib/python3.5/site packages','/Library/Frameworks/python3.5/python35.zip','/Library/Frameworks/python3.5/lib/python3.5','/Library/Frameworks/python3.5/Versions/3.5/plat darwin','/Library/Frameworks/python3.5/python3.5/python3.5/lib dynload']
    你看,这就是Python寻找软件包的地方。但有些东西没有意义。如原始问题中所述,
    ls/venv/lib/python3.5/site packages
    (上面的第二项)显示
    request-0-0-0-py3.5.egg-info
    ,一切正常,对吗?不知何故,否:运行
    python
    venv/bin/python3.5
    生成导入程序或安装了其他版本的python,但我不明白这有什么关系,因为我显式地调用了python3.5二进制文件,不是吗python3.5下找到code>假设使用了
    pip3
    是否不安全?尽管如此,还是按照您的建议执行:
    pip3安装-r requirements.txt
    意外生成
    您必须至少给出一个安装要求