Python无法导入使用pip venv安装的库

时间:2020-08-20 19:12:21

标签: windows virtualenv python-3.7 sys python-venv

我看了几篇文章和文章,但似乎找不到解决方案。我需要使用jenkspy来完成特定任务,但是我的Python3x随安装了名为ArcGIS Pro的软件,该软件将默认的python环境指定为“只读”,这意味着未随其一起安装的软件包必须安装在虚拟环境中。

因此,我打开命令行并运行:

py -m venv env
py -m pip install jenkspy --user

如果我继续从命令窗口运行python,我可以导入jenkspy没问题。但是,当我尝试将其导入iPython或将其作为脚本加载到pythonWin中时,会得到:

import jenkspy
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'jenkspy'

所以我回到命令窗口并运行python来找到jenkspy的路径:

import sys
print (sys.path)

返回:

['', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\Lib', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\Lib\\idlelib', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\python37.zip', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\DLLs', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\lib', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64', 'C:\\Users\\johnsmith\\AppData\\Roaming\\Python\\Python37\\site-packages', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\lib\\site-packages']

在此环境中,我导航至本机idle.py文件并导入jenkspy。没问题。我从空闲控制台打印sys.path。与命令行中的结果相同。

然后我回到iPython并运行:

import sys
paths = ['C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\Lib', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\Lib\\idlelib', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\python37.zip', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\DLLs', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\lib', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64', 'C:\\Users\\johnsmith\\AppData\\Roaming\\Python\\Python37\\site-packages', 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\lib\\site-packages']

for p in paths:
    sys.path.append(p)

然后:

import jenkspy

我收到此错误:

ImportError                               Traceback (most recent call last)
<ipython-input-19-88ab181dc114> in <module>
----> 1 import jenkspy

~\AppData\Roaming\Python\Python37\site-packages\jenkspy\__init__.py in <module>
      3 __version__ = "0.1.5"
      4 
----> 5 from .core import jenks_breaks
      6 
      7 

~\AppData\Roaming\Python\Python37\site-packages\jenkspy\core.py in <module>
      7     from math import isinf, isnan
      8     isfinite = lambda x: not isinf(x) and not isnan(x)
----> 9 from . import jenks
     10 try:
     11     import numpy as np

ImportError: cannot import name 'jenks'

要使用独立脚本和/或iPython导入jenkspy或其他python后安装包/模块,我需要做什么?

0 个答案:

没有答案
相关问题