多Python版本环境下解决ModuleNotFoundError问题
解决方案
一、解决脚本直接运行的模块找不到问题
- 强制指定Python版本安装依赖:打开命令提示符,执行
py -3.10 -m pip install base58==2.1.1,确保依赖安装在你默认使用的Python3.10环境中。直接用pip可能关联到Python3.11,导致3.10环境实际未安装目标模块(即便pip freeze显示有,也可能是另一个版本的pip输出)。 - 运行脚本时明确指定版本:用
py -3.10 ConverttoWIF.py启动脚本,避免系统调用错误的Python解释器。 - 验证模块路径:在脚本开头添加以下代码,运行后查看输出路径是否包含base58所在的
site-packages文件夹(注意:模块实际存放在site-packages而非你添加到PATH的Scripts目录):
如果输出中没有import sys print(sys.path)C:\Users\Captain\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages,需要将该路径添加到sys.path,或修正环境变量。
二、解决PyInstaller打包后的错误
- 重新安装对应版本的PyInstaller:执行
py -3.10 -m pip install pyinstaller,确保打包工具与你的Python版本匹配。 - 重新打包脚本:用
py -3.10 -m PyInstaller ConverttoWIF.py命令打包,让PyInstaller扫描Python3.10环境中的依赖,将base58模块包含到可执行文件中。 - 若仍无效,手动指定模块路径打包:
py -3.10 -m PyInstaller --paths "C:\Users\Captain\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages" ConverttoWIF.py
三、关于删除Python3.10的建议
不要删除Python3.10,你当前默认使用该版本,删除后会导致依赖环境混乱,反而引发更多问题。核心问题是版本匹配错误,而非版本本身存在问题。
内容的提问来源于stack exchange,提问作者Lily
相关产品推荐
相关产品推荐

