从不同文件夹导入文件

2023-11-25

我有这个文件夹结构:

application
├── app
│   └── folder
│       └── file.py
└── app2
    └── some_folder
        └── some_file.py

我如何导入函数file.py, 从内部some_file.py?我试过:

from application.app.folder.file import func_name

但它不起作用。


注意:这个答案是针对一个非常具体的问题。对于大多数从搜索引擎来到这里的程序员来说,这不是您正在寻找的答案。通常,您会将文件构建为包(请参阅其他答案),而不是修改搜索路径。


默认情况下,你不能。导入文件时,Python 仅搜索运行入口点脚本的目录sys.path其中包括包安装目录等位置(实际上是稍微复杂一点比这个,但这涵盖了大多数情况)。

但是,您可以在运行时添加到 Python 路径:

# some_file.py
import sys
# caution: path[0] is reserved for script path (or '' in REPL)
sys.path.insert(1, '/path/to/application/app/folder')

import file
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从不同文件夹导入文件 的相关文章

随机推荐

  • 将整数拆分为 bin

    给定一个整数和 bin 的数量 如何将整数分成尽可能相等的部分 例如 输出的总和应等于输入整数 in x 20 num bins 3 out 7 7 6 另一个例如 in x 20 num bins 6 out 4 4 3 3 3 3 我试
  • (OpenGL 3.1 - 4.2) 动态统一数组?

    假设我有 2 个物种 例如人类和小马 它们具有不同的骨骼系统 因此每个物种的统一骨骼阵列必须有所不同 我是否必须实现两个单独的着色器程序才能正确渲染每个骨骼数组 或者是否有办法动态声明统一数组并迭代该动态数组 牢记性能 所有着色器在决策分支
  • Maven 对 JRE 的使用感到困惑

    我已经在 Eclipse 中创建了一个项目并添加了 Maven 依赖项 在 Eclipse 中 它显示我正在使用 JRE 1 5 Eclipse 中一切正常 例如 我可以运行我的测试 当我尝试跑步时mvn clean install从终端
  • OLEDB 连接没有刷新日期

    我需要以编程方式检查 Excel 中许多 OLEDB 数据连接到 SQL 表和视图的刷新日期 它们都以相同的方式配置并使用相同的连接字符串 我使用以下方式在 VBA 中检查它们 Connections OLEDBConnection Ref
  • Tkinter.PhotoImage 不支持 png 图像

    我正在使用 Tkinter 编写 GUI 并希望在Tkiner Label 所以我有一些这样的代码 self vcode img PhotoImage data open test png read format png self vcod
  • 参考 - 这个错误在 PHP 中意味着什么?

    这是什么 这是关于您在 PHP 编程时可能遇到的警告 错误和通知的一些答案 但不知道如何修复它们 这也是一个社区 Wiki 因此邀请每个人参与添加和维护此列表 为什么是这样 诸如此类的问题 标头已发送 or 调用非对象的成员 经常出现在 S
  • UIPageViewController,如何正确跳转到特定页面而不打乱数据源指定的顺序?

    我发现了一些关于如何制作的问题UIPageViewController跳转到特定页面 但我注意到跳转时存在一个额外的问题 似乎没有一个答案承认这一问题 无需深入了解我的 iOS 应用程序 类似于分页日历 的详细信息 这就是我所经历的 我声明
  • CoreData:如何按主键对 NSManagedObject 进行排序?

    我有一个 NSManagedObject 的子类 如下所示 并通过 NSManagedObjectContext 存储了一些实例 interface SomeModelObject NSManagedObject property nona
  • 在python中获取友好的设备名称

    我有一个 2 端口信号继电器通过 USB 串行接口连接到我的计算机 使用 pyserial 模块 我可以轻松控制这些继电器 然而 这是基于这样的假设 我事先知道设备分配给哪个 COM 端口 或 dev 节点 对于我正在做的项目来说 这还不够
  • 如何传递构造函数数组

    如何传递返回某种类型对象的函数数组 换句话说 构造函数数组 我想做的是这样的 constructor name string systems Array
  • StructureMap IRegistrationConvention 注册非默认命名约定?

    我目前有一堆像这样的存储库 我的存储库I另一个存储库 它们都继承自 IRepository 如果这有帮助的话 如何获取结构图以使用 IRegistryConvention 扫描仪来注册名为的具体类型 SQLMyRepositorySqlAn
  • 更改 Word 文档中所有链接的来源 - 范围错位

    我研究这段代码是为了更改 Word 模板中所有链接字段 图表 的来源到启动它的工作簿 I had 常用领域 and charts 它们存储在InlineShapes 所以每个模板都有 2 个循环 这些循环有时会卡住For Each 并继续循
  • 好处和。本地托管 jQuery 的陷阱 [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我们目前正在从 google CDN 中提取 jQuery 和 jQueryUI 以及 jQueryUI CSS 库 我喜欢这个 因为我可以打电话google load jque
  • 如何创建均值和标准差data.table 中的列

    以下代码 结果让我困惑为什么 data table 对于mean函数而不是sd函数返回NA library data table test lt data frame id c 1 2 3 4 5 A seq 2 9 length 5 B
  • 为什么 std::map 重载运算符 < 不使用 Compare

    From http www cplusplus com reference map map operators 我注意到 请注意 这些操作都没有考虑任一容器的内部比较对象 而是直接比较 value type 类型 元素 这就是说重载运算符
  • navigator.onLine 并不总是有效

    我的 navigator onLine 属性有问题 我正在从 WAMP 上运行的本地信息亭运行一个简单的网站 当我在我的笔记本电脑上测试它时 它可以工作 我关闭 WiFi 然后出现警告框 在运行 WAMP 软件的信息亭上断开互联网连接不会产
  • 无法将 line_profiler 与 Cython 一起使用

    根据以下问题的答案这个问题我试图使用线路分析器具有 cythonized 功能 关于上述问题 已接受的答案为我们提供了如何将其与 jupyter Notebook 一起使用的示例 但是 当我尝试构建pyx使用 disutils 文件它不起作
  • 根据角色隐藏链接

    我是 ASP MVC 新手 我正在尝试开发一个门户来维护员工数据 在我的系统中 只有 经理 有权创建员工 如何在经理登录时启用该链接并在员工登录时禁用该链接 谢谢 My View model IEnumerable
  • 如何检索 WinForms PictureBox 的缩放系数?

    我需要鼠标指针在 PictureBox 上的精确位置 我使用 PictureBox 的 MouseMove 事件 在此 PictureBox 上 我使用 缩放 属性来显示图像 获取鼠标在原始 未缩放 图像上的位置的正确方法是什么 有没有办法
  • 从不同文件夹导入文件

    我有这个文件夹结构 application app folder file py app2 some folder some file py 我如何导入函数file py 从内部some file py 我试过 from applicati