Python 3.12 Windows 环境下 ModuleNotFoundError 解决方案
学习笔记作者:admin日期:2025-05-27点击:216
摘要:总结了在 Windows 上使用 Python 3.12 时遇到 ModuleNotFoundError: No module named 'Crypto' 的解决步骤,包括正确安装 PyCryptodome、检查 Python 环境路径及虚拟环境配置。
Python 3.12 Windows 环境下 ModuleNotFoundError 解决方案
当你在 Windows 上使用 Python 3.12 时,如果遇到 ModuleNotFoundError: No module named 'Crypto' 错误,可以按照以下步骤解决问题。
1. 正确安装 PyCryptodome
确保你运行的是以下命令:
pip install pycryptodome注意:不是 crypto 或 Crypto,而是全小写的 pycryptodome。
2. 检查是否安装成功
运行以下命令查看是否安装成功:
pip show pycryptodome如果输出类似如下内容,说明已经安装好了:
Name: pycryptodome
Version: 3.20.0
Summary: Cryptographic library for Python
Home-page: https://www.pycryptodome.org
Author: Helder Eijs
Author-email: helderijs@gmail.com
License: BSD
Location: c:\users\yourname\appdata\local\programs\python\python312\lib\site-packages
Requires:
Required-by:3. 清理 pip 缓存并重装(可选)
有时候缓存可能有问题,可以尝试:
pip cache purge
pip install --no-cache-dir pycryptodome4. 检查 Python 环境是否正确
确保你运行的是 Python 3.12 的 pip。
查看当前 pip 对应的 Python 版本:
pip -V输出应该类似于:
pip 24.0 from C:\Users\你的用户名\AppData\Local\Programs\Python\Python312\lib\site-packages\pip (python 3.12)如果不是 Python 3.12,建议使用:
python -m pip install pycryptodome或者:
py -3.12 -m pip install pycryptodome5. 测试是否能导入 Crypto
新建一个测试文件 test_crypto.py,内容如下:
from Crypto.Cipher import AES
print("导入成功!")然后运行它:
python test_crypto.py如果输出 导入成功!,说明问题已解决。
6. 如果你在虚拟环境中
请确保你激活了虚拟环境,并且在该环境中安装了 pycryptodome:
# 创建虚拟环境
python -m venv venv
# 激活虚拟环境
venv\Scripts\activate
# 安装依赖
pip install pycryptodome7. 卸载错误的 crypto 包(如果有)
有些用户误装了 crypto(注意是小写),这会导致冲突。
你可以检查一下有没有安装这个包:
pip show crypto如果有的话,卸载它:
pip uninstall crypto8. 查看 Python 命令对应的文件路径
使用以下命令查看 python 命令对应的实际可执行文件路径:
where python输出可能类似如下内容:
C:\Users\你的用户名\AppData\Local\Programs\Python\Python312\python.exe
C:\Users\你的用户名\AppData\Local\Microsoft\WindowsApps\python.exe你可以通过运行下面这个命令来确认当前使用的具体路径:
python -c "import sys; print(sys.executable)"9. 总结
通过以上步骤,你应该能够解决 ModuleNotFoundError: No module named 'Crypto' 的问题。