python - 为什么 pip 无法在 sys.path 中发现我的包?
问题描述
我有一个 python 环境,其中 sys.path 配置为指向多个位置:
$ python
Python 3.7.4 (default, Aug 13 2019, 20:35:49)
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>> sys.path
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'sys' is not defined
>>> import sys
>>> sys.path
['', '/home/shared/conda3/lib/python37.zip', '/home/shared/conda3/lib/python3.7', '/home/shared/conda3/lib/python3.7/lib-dynload', '/home/shared/venv/torch-cv/lib/python3.7/site-packages', '/home/shared/conda3/lib/python3.7/site-packages']
包“火炬”安装在其中之一下:
>>> import torch
>>> torch.zeros(2,3)
tensor([[0., 0., 0.],
[0., 0., 0.]])
>>> print(torch.__file__)
/home/shared/venv/torch-cv/lib/python3.7/site-packages/torch/__init__.py
但是,似乎 pip 无法发现它:
$ pip list | grep torch
$ pip uninstall torch
WARNING: Skipping torch as it is not installed.
是什么原因,我应该如何解决?
pip 的安装也在 sys.path 中,但与torch
包相比位于不同的目录中:
$ which pip
/home/shared/conda3/bin/pip
解决方案
推荐阅读
- c - 在工作队列中使用 spin_lock() 与 down_interruptible()
- r - 具有重复值的两个向量之间的“设置差异”
- mysql - 在 MySql 表上批量执行 UPDATE 比逐个执行 UPDATE 更快吗?
- php - codeigniter 上传 Excel 并在视图中显示内容
- java - Spring批处理MongoItemReader忽略数据库索引(通过Spring Data创建)
- python - 设置异常时避免递归
- asp.net - 无法在项目绑定功能上使用中继器项目
- oracle - Oracle 触发器:在更新时插入事务实体新行,插入帐户实体
- autocomplete - 使用deoplete在neovim中的Python自动完成
- database-design - 数据库 - 概念模型设计