发布
社区首页 >问答首页 >在mac (Big )上导入模块以及sys.executable和包的位置不匹配的问题?

在mac (Big )上导入模块以及sys.executable和包的位置不匹配的问题?
EN

Stack Overflow用户
提问于 2021-03-06 17:16:36
回答 1查看 417关注 0票数 2

我遇到了一个问题,我将安装一个包(比如tensorflowdpu_utils),它最终会在与sys.executable不同的位置结束。例如,当我在我的终端上运行pip show dpu_utils时,我得到以下信息:

代码语言:javascript
代码运行次数:0
复制
Name: dpu-utils
Version: 0.2.20
Summary: Python utilities used by Deep Procedural Intelligence
Home-page: https://github.com/microsoft/dpu-utils
Author: Deep Procedural Intelligence
Author-email: None
License: MIT
Location: /usr/local/lib/python3.9/site-packages
Requires: docopt, tqdm, sentencepiece, azure-storage, numpy, SetSimilaritySearch
Required-by: 

当我运行pythonimport dpu_utilsimport sys,然后运行sys.executable时,我得到以下信息:

代码语言:javascript
代码运行次数:0
复制
python
Python 3.7.3 (default, Dec 13 2019, 19:58:14) 
[Clang 11.0.0 (clang-1100.0.33.17)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import dpu_utils
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'dpu_utils'
>>> import sys
>>> sys.executable
'/Library/Developer/CommandLineTools/usr/bin/python3'
>>> exit()

正如您所看到的,出现这个问题是因为我的sys.executable与实际安装包的位置不匹配。是否有一种将sys.executable设置为与/usr/local/lib/python3.9/site-packages匹配的方法?我很困惑如何做到这一点,因为更新到巨无霸在我的Mac。我试图在PATH中编辑.zshrc变量,但没有这样的运气。如果有人能一步一步地告诉我如何编辑我的环境变量,以便我的程序找到它们实际安装的包材料,那将是非常有帮助的。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-09 11:19:14

若要将软件包安装到特定路径,请在--target中使用pip

但我建议在一个非常特殊的情况下使用它。因为如果一切都配置正确,就不需要提供包特定的路径。

我遇到了这样的问题。在我看来,不同版本的python 3.7和3.9似乎存在问题。这意味着pip将在不同的文件夹中安装包,并在不同的虚拟环境中引用它们(如果创建的话)。安装在一个地方,从另一个地方运行。好吧,或者环境认为有必要在那里联系它,因为可能安装了几个不同版本的python。或者,python被错误地更新了。

怎样才能使事情井井有条:

manually.

  • Update

  • 可选-查找和删除所有提及和包的(安装) python,更新pip。使用所需的python版本创建一个新的虚拟环境。active environment.
    • Install中的
    • Сit python和pip版本都只从这个环境中运行包,只从它运行脚本。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66508481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档