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

添加PythonPath后导入模块却无法访问其函数的问题求助

问题解决:导入Python包后无法直接调用内部函数

核心原因

你将depth_3加入sys.path后,row_1作为顶级包被导入,但当前row_1/__init__.py里的from . import *仅会把同目录下的模块(比如row_1_file)导入到包的命名空间,不会自动把模块内的row_1_print函数提升到包的顶层。因此直接调用row_1.row_1_print或from row_1 import row_1_print都会失败。

解决方案

方案1:修改包的__init__.py(推荐)

把每个row_x包下的__init__.py内容从from . import *改为明确导入目标函数:

# row_1/__init__.py
from .row_1_file import row_1_print

同理,row_2/__init__.py改为:

from .row_2_file import row_2_print

修改后,只需执行import row_1,就能直接调用row_1.row_1_print()。

方案2:调整导入语句(无需修改代码)

如果不想改动__init__.py,可以直接导入模块内的函数:

# 方式1:导入模块后调用函数
import row_1.row_1_file
row_1.row_1_file.row_1_print()

# 方式2:直接导入函数
from row_1.row_1_file import row_1_print
row_1_print()

内容的提问来源于stack exchange,提问作者Joe

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 03:01:10