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

conda打包安装后无法按模块名导入自定义模块求助

问题分析与解决

你遇到的核心问题是项目结构不符合Python包规范,导致conda/pip无法正确识别myfuncondaproject作为可导入的模块。

当前结构的问题

你把setup.py和包核心文件(__init__.py、main.py)放在同一层级,这会让打包工具错误地将单个文件识别为可导入项,而非整个myfuncondaproject目录作为一个完整包。

修正步骤

1. 调整项目结构

将文件重新组织为标准Python包结构:

myfuncondaproject-project/  # 项目根目录(名称可自定义)
├── setup.py
└── myfuncondaproject/      # 实际的Python包目录
    ├── __init__.py
    └── main.py

2. 修正setup.py配置

确保setup.py正确指定要打包的包,示例配置如下:

from setuptools import setup, find_packages

setup(
    name="myfuncondaproject",
    version="0.1.0",
    # 自动识别所有包含__init__.py的包目录,也可手动写packages=["myfuncondaproject"]
    packages=find_packages(),
)

3. 重新安装包

进入项目根目录(包含setup.py的文件夹),执行以下命令重新安装:

# 开发模式安装(修改代码后无需重复安装)
pip install -e .

# 或用conda打包安装
conda build .
conda install --use-local myfuncondaproject

4. 优化导入体验(可选)

如果想直接通过import myfuncondaproject调用print_hi,可在myfuncondaproject/__init__.py中添加:

from .main import print_hi

之后即可直接使用:

>>> import myfuncondaproject
>>> myfuncondaproject.print_hi("Liam")
Hi, Liam

验证

重新安装后,打开Python终端测试:

>>> import myfuncondaproject
>>> from myfuncondaproject import main
>>> main.print_hi("Liam")
Hi, Liam

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 20:00:37