m0_70306528 2022-09-23 08:47 采纳率: 66.7%
浏览 54
已结题

pycharm 运行Django项目时出现了这样的报错,哪位可以帮我看看怎么解决

问题遇到的现象和发生背景
用代码块功能插入代码,请勿粘贴截图
运行结果及报错内容

from distutils.version import LooseVersion
ModuleNotFoundError: No module named 'distutils.version'; 'distutils' is not a package

  • 写回答

3条回答 默认 最新

  • 爱音斯坦牛 全栈领域优质创作者 2022-09-23 09:36
    关注

    解决方案一:
    又是一个导包问题,在distutils,目录下新建一个__init__.py文件,也就是将它转换成一个包试试
    解决方案二:
    项目中不要写你这个项目根目录名开始导,从他的下级目录开始
    比如一个项目的根目录是 project ,他下面有两个文件 main.py 和 ls.py , Is 有个 College 类,那么, main.py里导入就是 from ls import Colege ,不要写成 from project.ls import Colege
    解决方案三:
    检查一下distutils,目录是否在项目的path下,如果项目的path下没有这个目录,请把它添加进去,然后导入的时候不要从这个目录开始了,从他的子目录,也就是题目中的from version import …
    至于如何添加,就要看你在哪个文件中写这个代码了?就是目录的相对关系,搞清楚就行,这里给你举一个,我之前回答的已被采纳的案例,你可以看看

    img

    # 将pk11上上级目录demo1添加到path,添加之前可以输出sys.path看他在里面吗,么有就添加!
    import sys,os
    sys.path.append(os.path.abspath(os.path.join(os.getcwd(), "../..")
    # print(sys.path)
    

    链接在这里:http://t.csdn.cn/zApsx
    说白了就是将你这个distutils目录添加到path,至于上面这段参考代码,你要写到哪里就决定了你append()的路径,就看你当前代码所在的文件和distutils目录,是什么关系?比如父子关系,爷孙关系,然后把对应的路径写上去就行,比如是父子关系的话,先获取当前文件的绝对路径,然后往上回退一个父目录,这样是不是append之后将distutils添加到了path,这块内容属于os模块知识。
    以上三种解决方法,基本都是我做项目总结出来的,前两种解法搞不出来的,第三种解决方案基本都完美解决,请一个个试试!
    有帮助的话采纳一下哦!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月1日
  • 已采纳回答 9月23日
  • 创建了问题 9月23日

悬赏问题

  • ¥15 网络设备配置与管理这个该怎么弄
  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器