离线Windows环境下手动创建并可编辑安装Python工具包
方法1:通过.pth文件实现(最简单)
pip -e的核心是让Python解释器能找到本地包的路径,.pth文件是Python官方支持的路径配置方式,无需依赖pip或网络:
定位site-packages目录
打开Python终端执行以下命令,获取你的Python解释器对应的site-packages路径:import site print(site.getsitepackages())输出的路径通常类似:
C:\Users\<你的用户名>\AppData\Local\Programs\Python\Python313\Lib\site-packages(系统Python)或虚拟环境下的venv\Lib\site-packages。创建.pth文件
在上述site-packages目录中新建一个文本文件,命名为[你的包名].pth(比如my_toolkit.pth),文件内容写入你的工具包父目录的绝对路径。例如你的工具包结构是D:\Dev\my_toolkit\my_toolkit\__init__.py,则写入:D:\Dev(Windows路径可以用正斜杠
/或双反斜杠\\,避免转义错误)验证效果
打开Python终端或PyCharm的Python控制台,执行import my_toolkit,若能成功导入,说明配置生效。修改本地工具包的代码后,重启PyCharm解释器或用import importlib; importlib.reload(my_toolkit)重新加载,即可看到最新代码效果。
方法2:用setuptools develop模式(完全等价pip -e)
如果你希望和pip -e的行为完全一致(生成egg-link元数据),可以直接调用setuptools的develop命令,无需网络:
准备工具包结构
确保你的工具包根目录下有setup.py(或pyproject.toml),最小结构示例:my_toolkit/ setup.py my_toolkit/ __init__.py # 你的模块文件简单的
setup.py内容示例:from setuptools import setup, find_packages setup( name="my_toolkit", version="0.1", packages=find_packages() )执行develop命令
打开命令提示符,进入工具包根目录(含setup.py的目录),执行:python setup.py develop --no-deps--no-deps参数会跳过依赖安装,避免网络请求。执行完成后,setuptools会在site-packages中创建一个.egg-link文件,指向你的本地包路径,效果完全等同于pip install -e .。验证与维护
同样通过import my_toolkit验证导入,代码修改后即时生效。若后续需要移除这个可编辑安装,执行:python setup.py develop --uninstall
PyCharm配置注意事项
- 确保PyCharm使用的Python解释器是你配置了.pth/egg-link的那个(在
File > Settings > Project: [项目名] > Python Interpreter中确认)。 - PyCharm会自动识别site-packages中的路径配置,无需手动在项目中添加
sys.path。
内容的提问来源于stack exchange,提问作者ibanezONE

