繁体   English   中英

Python3 找不到 pip3 安装的模块,即使它安装了 defintley

[英]Python3 cannot find module installed by pip3 even though it is deffintley installed

我有一个文件夹结构

root
|-setup.py
|-src
| |-BDDexample
|   |-ExampleSystem.py (contains a class called ExampleSystem)
|   |-__init__.py (empty file)
|
|-tests
  |-cucumber
    |-features
      |-steps
        |-EnableSystemStepImpl.py

我的setup.py文件是:

#!/usr/local/bin/python3.6
from setuptools import setup, find_packages

setup(
    name="BDDexample",
    version="0.2",
    packages=find_packages()
)

然后我使用pip3 install . . 我也试过python3 setup.py bdist_wheel然后是pip3 install dist/BDDexample-0.2-py3-none-any.whl

它找到模块 BDDexample,我可以通过键入pip3 list来测试它,它显示了模块。

但是,在EnableSystemStepImpl.py有一行:

from BDDexample.ExampleSystem import ExampleSystem

我得到错误:

ModuleNotFoundError: No module named 'BDDexample'

当我尝试运行此文件时。

为什么会这样! 已经安装了,为什么找不到。 我知道有很多 python 导入问题,但似乎我做的一切都是正确的。

文件 BDDexample.ExampleSystem 没有从 ExampleSystem 中提取,因为它可能不在 PC 提取的直接可访问路径中。 请检查它是否在您的c盘等中...

我找到了答案,因为我不应该有src文件夹。 我已将目录结构更改为:

root
|-setup.py
|-BDDexample
| |-ExampleSystem.py (contains a class called ExampleSystem)
| |-__init__.py (empty file)
|
|-tests
  |-cucumber
    |-features
      |-steps
        |-EnableSystemStepImpl.py

现在它可以工作了。

我假设find_packages找不到BDDexample模块,因为它在另一个文件夹中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM