- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我的目录结构:
├── src
│ ├── helpers
│ │ ├── __init__.py
│ │ ├── foo.py
│ │ └── bar.py
│ ├── services
│ │ ├── __init__.py
│ │ ├── faz.py
│ │ └── baz.py
│ └── main.py
├── tests
│ ├── helpers
│ │ ├── test_foo.py
│ │ └── test_bar.py
│ ├── services
│ │ ├── test_faz.py
│ │ └── test_baz.py
src/helpers/__init__.py
Như hình dưới đây:
from .foo import Foo
from .bar import Bar
src/services/__init__.py
好像:
from .faz import Faz
from .baz import Baz
src/main.py
:
import helpers
f = helpers.Foo()
tests/helpers/test_foo.py
:
import src.helpers as helpers
def test_foo():
f = helpers.Foo()
src\services\faz.py
引用资料
src\helpers\foo.py
.
...\faz.py
Như hình dưới đây:
import helpers
class Faz():
def DoSomething(self):
# something
python src/main.py
,这将有效.但是如果我运行
coverage run -m pytest
,我收到错误
ModuleNotFoundError: No module named 'helpers'
.如果我将导入语句更改为
import src.helpers
,测试有效,但应用程序不再有效。
1 Câu trả lời
我认为你需要把它变成一个可安装的 python 包。您只需执行普通的 python 包导入,而不是破解路径。假设该产品名为“foopackage”,您可以添加 src/foopackage 并包含 setup.py 文件。
├── src
│ ├── foopackage
│ │ ├── helpers
│ │ │ ├── __init__.py
│ │ │ ├── foo.py
│ │ │ └── bar.py
│ │ └── services
│ │ ├── __init__.py
│ │ ├── faz.py
│ │ └── baz.py
│ └── scripts
│ └── main.py
├── tests
│ ├── helpers
│ │ ├── test_foo.py
│ │ └── test_bar.py
│ ├── services
│ │ ├── test_faz.py
│ │ └── test_baz.py
├── setup.py
python setup.py bdist_wheel
打包您的产品或其他选项。或者进行“开发”安装。设置一个python虚拟环境,当你想测试时,在这个目录的根目录下做
pip install -e .
(“可编辑”设置它以便 python 从这个本地目录而不是常规的 python 模块目录中获取你的包)。现在类似于
nose
hoặc
pytest
可以扫描树以查找任何名为 test_xxx.py 的内容并运行它。
main.py
,脚本和各种测试模块都只是
import foopackage.helpers as helpers
from .. import helpers
setup.py
将会
#!/usr/bin/env python
from setuptools import find_packages, setup
setup(
name='foopackage',
version='1.0.0',
description='Foo all the Bars',
packages=find_packages('src'),
package_dir={'': 'src'},
scripts=['src/scripts/main.py']
)
关于Python 目录 hell ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61529706/
不同的编程语言使用不同的打包系统。 Java 的 Maven 采用各种不同的方法。对我来说似乎是最好的选择,因为它在不同版本的文件夹中维护不同版本的 jar 文件,因此,没有办法最终导致库的版本冲突。
这个问题已经有答案了: force browsers to get latest js and css files in asp.net application (23 个回答) 已关闭 7 年前。
我目前正在将带有一些回调 hell 的构建过程转换为 promise hell ( hell 很可能是因为我是 promises 的新手并且我对 Bluebird 缺乏经验)。我正在努力通过 .all
在我的一个项目中,我使用了一个动态加载包装器 DLL(导出 C 风格函数)的 Delphi 应用程序,后者又静态链接到一堆第 3 方 DLL。 它在我的测试机器上工作正常,但在我的客户计算机上它无法初
昨晚我试图放一个简单的教程来使用堆栈构建应用程序 - Spring(2.5)+ JPA(1.0)+ Hibernate(第一次下载,所以不知道使用哪个版本)。不幸的是,我不想使用 Maven,因为目标
class Badge(SafeDeleteModel): owner = models.ForeignKey(settings.AUTH_USER_MODEL,
为什么这个查询: SELECT "hello" = " hello", "hello" = "hello ", "hello" <> "hello ", "hello"
我目前正在尝试从公共(public) API 获取有关一个国家及其邻国的数据,以在我的 html 上呈现。 renderCountry( ) 是一个函数,用于在我的 html 上实现我将收到的数据。
我的背景是 Python,在 Python 中,您将所有事物都视为鸭子,并且无需定义类型。我最近开始使用 Dart 编写代码,现在我遇到了这些类型转换问题。 下面的代码有什么问题? appendCsv
Đây là cấu trúc thư mục của tôi: ├── src │ ├── helpers │ │ ├── __init__.py │ │ ├── foo.py │ │ └── bar.py │
đóng cửa. Câu hỏi này dựa trên ý kiến. Hiện tại không chấp nhận câu trả lời. Bạn có muốn cải thiện câu hỏi này không? Cập nhật câu hỏi bằng cách chỉnh sửa bài đăng này để cung cấp thông tin và trích dẫn để trả lời câu hỏi. Đã đóng 2 năm trước. Cải thiện điều này
Tôi đang cố gắng đưa phiên bản cụ thể của thư viện vào dự án Haskell của mình. Thư viện này rất phù hợp (cho các phép toán martix), nhưng tôi đặc biệt cần phiên bản 0.4.3 để sửa lỗi trong quá trình thực hiện phép nhân. Vì vậy, stack.yaml của tôi
我偶尔会遇到一个问题,即为设备配置开发版本的应用程序。错误消息通常是“找不到此可执行文件的有效配置文件”。 我已遵循所有 Apple 说明:我拥有有效的开发证书,开发人员配置文件包含相关设备的设备 I
我正在开发具有少数不同项目的 asp.net 核心解决方案,每个项目都使用某个版本库的 3rd 方 NuGet 包。这些版本,例如1.0.0 和 2.0.0,有重大变化。另外,这个库是由另一个项目团队
我正在尝试为我制作的自定义组件制作一个包。它基于多个库,包括 Graphics32、GraphicEx 和 CCR.Exif。 我创建了一个Package项目,编写了包括其Register过程的单元,
在研究 NodeJS 中的“回调 hell ”时,我得到了很多推荐相同内容的网站。浅层函数、模块化,以及一些工具,如 Promise、异步和生成器。 从技术上讲,我知道什么是回调,也知道为什么在 No
我使用Python构建了一个AI应用程序,其中涉及大量的Python库。此时,我想在Docker容器中运行我的应用程序以使AI App成为服务。 关于依赖项,我有哪些选择,以便自动下载所有必需的库?
谁能提供 SecurityDriven.Inferno AesCtrCryptoTransfom 的使用示例类(class) ? 该库似乎很有前途,但我无法找到任何使用它的代码,并且提供的详细信息对我
我有一个需要重复执行的任务,因此我尝试为其编写一个函数。我的函数几乎完成了,除了一个缺陷:我无法将公式作为参数传递,除非它是字符串的形式。 library(lme4) library(lazyeval
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 7 年前。 Improve this ques
Tôi là một lập trình viên xuất sắc, rất giỏi!