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

Mac M1+PyCharm环境下Django导入错误排查求助

Django导入错误:ImportError: Couldn't import Django

此前运行正常的Django项目突然出现以下导入错误:

"ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?"

使用Mac M1设备与PyCharm专业版,已确认Django已安装、虚拟环境(venv)已激活,推测问题出在PYTHONPATH配置或Python版本冲突上。系统存在多个Python版本,相关命令输出如下:

(venv) user_name@computer_name project_name % which python
python: aliased to /usr/bin/python3
(venv) user_name@computer_name project_name % which python3
/Users/user_name/PyCharmProjects/TrainingProjects/project_name/venv/bin/python3
(venv) user_name@computer_name project_name % which python3.9
/opt/homebrew/bin/python3.9

执行python3 -c "import sys; print(sys.path)"得到:

/opt/homebrew/Cellar/python@3.10/3.10.7/Frameworks/Python.framework/Versions/3.10/lib/python310.zip
/opt/homebrew/Cellar/python@3.10/3.10.7/Frameworks/Python.framework/Versions/3.10/lib/python3.10
/opt/homebrew/Cellar/python@3.10/3.10.7/Frameworks/Python.framework/Versions/3.10/lib/python3.10/lib-dynload
/Users/user_name/PyCharmProjects/TrainingProjects/project_name/venv/lib/python3.10/site-packages

settings.py中的相关代码:

import os
import sys #not active
from pathlib import Path

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

已尝试的操作:

  • 执行which $PYTHONPATH返回PYTHONPATH not found,echo $PYTHONPATH无输出
  • 执行export PYTHONPATH=$PYTHONPATH:/Library/Frameworks/Python.framework/Versions/3.9/bin/python3后问题仍未解决

解决方案

1. 重新创建匹配Python 3.9的虚拟环境

从命令输出看,当前激活的venv基于Python 3.10,但系统存在Python 3.9,若项目原本基于3.9开发,需重新创建对应版本的虚拟环境:

# 删除旧虚拟环境(可选)
rm -rf venv
# 用Python3.9创建新虚拟环境
python3.9 -m venv venv
# 激活虚拟环境
source venv/bin/activate
# 重新安装Django及依赖
pip install django

2. 修正PyCharm解释器配置

打开PyCharm:

  • 进入File > Settings > Project: [你的项目名] > Python Interpreter
  • 点击右上角齿轮图标,选择Add
  • 选择Existing environment,找到新创建的venv路径:/Users/user_name/PyCharmProjects/TrainingProjects/project_name/venv/bin/python3.9
  • 确认后应用配置,重启PyCharm

3. 修正PYTHONPATH设置

之前添加的是Python二进制文件路径,这是错误的。PYTHONPATH应指向Python的site-packages目录或项目根目录。若需添加Python3.9的依赖路径:

# 先获取Python3.9的site-packages路径
python3.9 -c "import site; print(site.getsitepackages())"
# 假设输出包含/opt/homebrew/lib/python3.9/site-packages,执行以下命令
export PYTHONPATH=$PYTHONPATH:/opt/homebrew/lib/python3.9/site-packages
# 若要永久生效,可将上述命令添加到~/.zshrc文件末尾

4. 移除Python别名冲突

当前python被别名指向系统的/usr/bin/python3,激活虚拟环境后仍会干扰venv的Python调用:

# 激活venv后临时移除别名
unalias python
# 若要永久解决,编辑~/.zshrc文件,删除或注释掉`alias python=/usr/bin/python3`这一行

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 01:41:05