You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何直接导入其他文件夹__init__.py中的变量无需前缀调用?

解决直接导入utils中变量的方法

方法一:规范路径配置 + 常规导入(推荐)

你的workflow和utils是同级目录,先把项目根目录(两个文件夹的父目录)加入Python的搜索路径,再直接导入utils里的所有内容:

在file1.ipynb开头添加以下代码:

import sys
from pathlib import Path

# 获取项目根目录(workflow的上级目录)
root_dir = Path.cwd().parent
sys.path.append(str(root_dir))

# 直接导入utils中的所有内容
from utils import *

之后你就能直接写function_one()调用,不需要加utils.前缀了。

方法二:批量导入模块成员(不推荐,易冲突)

如果一定要用你原来的importlib加载方式,可以把加载后的utils模块里的所有成员批量导入到当前命名空间:

import importlib

utils = importlib.machinery.SourceFileLoader('utils', '/home/utils/__init__.py').load_module()
# 将utils模块的所有成员导入当前命名空间
globals().update(utils.__dict__)

这种方法虽能实现需求,但容易覆盖当前已有的变量,造成命名冲突,优先推荐第一种方法。


内容的提问来源于stack exchange,提问作者matt.aurelio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 10:41:18