Python即使在使用pip安装后也找不到模块
我正在Ubuntu 18.04.3上使用python 3.6.8。 我的文件夹设置如下:Python即使在使用pip安装后也找不到模块,python,python-3.x,pip,setuptools,Python,Python 3.x,Pip,Setuptools,我正在Ubuntu 18.04.3上使用python 3.6.8。 我的文件夹设置如下: . └── my_package ├── independent_modules1 ├── independent_modules2 ├── setup.py └── src ├── sub_package1 ├── module1 └── module2 我的_包是一个git存储库,这就是为什么要放独立的_模块 /src是“
.
└── my_package
├── independent_modules1
├── independent_modules2
├── setup.py
└── src
├── sub_package1
├── module1
└── module2
我的_包是一个git存储库,这就是为什么要放独立的_模块
/src是“我的包”的所有模块所在的位置
setup.py包含以下内容:
from setuptools import setup, find_packages
setup(
name="my_package",
version="1.0",
package_dir={'': 'src'},
packages=find_packages(where='src')
)
我创建了一个名为my_env的虚拟环境,用于该项目
在虚拟环境中,在所有需要的软件包都已安装的情况下,我尝试通过执行以下操作来安装自己的软件包:
(my_env) my_user: ~/folder/my_package$ pip3 install -e .
Pip说该软件包安装成功,如果我运行pip3 list,它会列出我的_软件包
但如果我运行python3并尝试导入我的_包,我会得到ModuleNotFoundError:没有名为“my_包”的模块
有什么问题吗
我以前尝试过这样做,但是没有src文件夹设置(我的_包的模块都在我的_包下,与setup.py一起),它已经工作了。尝试重新启动机器。它对我有用。你通过终端安装了吗?如果是这样的话,请检查您安装它所使用的Python。如果我没记错的话,Ubuntu附带了默认的Python2.7。一旦安装了Python3,就可以
rm
Python2.7。我以前在其他模块中遇到过这个问题,这为我解决了这个问题。在安装脚本中,name
arg下面是您的发行名,用于安装项目。这不重要。重要的是包
列表的内容。在您的示例中,my_package
用于安装项目,例如,通过pip安装my_package
,而您应该能够导入sub_package1
、module1
、module2
等。hoefling将您的评论作为答案,我能够在您的帮助下解决问题。我将sub_package1
、module1
和module2
放在my_package
文件夹下的src
下,解决了问题。