博主头像
明关のBLOG

分享交流!

vscode python 出现调试报错 ImportError: cannot import name ‘Literal‘ from ‘typing‘

前言

2024/10/15 上午9点vscode正常调试的py文件在当天11点之后时候,所有的py文件全部调试报ImportError: cannot import name 'Literal' from 'typing',按照这个报错搜索解决方案没有找到有效的解决方式

但是所有的解释均指向了 Literal是在Python 3.8中引入的新功能,并未包含在旧版本的typing模块中。因此,在较旧的Python版本中,无法从typing模块中导入Literal

所以这个时候考虑是vscode扩展中的python debugger调用了literal,而我本机只安装了python3.7.4作为内核,同时在调试代码的时候会调用debugger,从而导致了调试异常,出现了ImportError: cannot import name ‘Literal‘ from ‘typing‘这个报错

因此怀疑是debugger这个扩展自动更新了导致不支持python 3.8以下的版本了

解决方法

在VScode的扩展中找到python debugger>右键>选择安装特定版本...

python debugger 扩展
python debugger 扩展

​​
不要选择2024.12.0以上的版本,python 3.7及更早的版本最搞只能选择2024.10.0的版本

版本选择
版本选择

同时如果和我一样长期使用python3.8以前的版本的话,为了以后不再出这个问题,建议把VScode拓展中的python debugger的自动更新也关掉(下图所示位置取消勾选)

停止更新
停止更新

现在python3.8以前的版本就正常调试了,又可以愉快的使用VS了

补充

 Python3.8以后得版本其实也可以用这个2024.10.0版本的python debugger(太后续的版本就不确定了,暂时还没遇到)

如果是其他原因出现ImportError: cannot import name 'Literal' from 'typing'

那么可以考虑下面两个解决方案

  1. 升级python版本到3.8及以上
  2. python3.8以下使用typing_extensions模块(怎么安装库就不用我说了吧)
pip install typing_extensions

 

vscode python 出现调试报错 ImportError: cannot import name ‘Literal‘ from ‘typing‘
https://blog.reeskysui.xyz/archives/18/
本文作者 明关
发布时间 2025-02-04
许可协议 CC BY-NC-SA 4.0
仅有 1 条评论
  1. 评论头像

    如果在CSDN和腾讯开发者社区见到过一模一样的博客,那多半还是我了OωO

    明关 博主 July 6th, 2025 at 07:50 pm 回复
发表新评论
×
NOTICE 系统公告
📢 欢迎访问本站!
✨ 功能上新:
1️⃣OSS + CDN📦全面接管文件存储与分发
2️⃣域名焕新🌐导航页
3️⃣安全升级🔐邮箱验证账号注册功能
4️⃣网站冬装❄️辞旧迎新(过年有彩蛋)
5️⃣PKM📚私有知识管理库上线(需要有账号访问)
6️⃣公共插件开发完成✅已上线
7️⃣typecho核心更新💕1.3.0版本
🎊感谢大家的支持,愿新的一年,大家浏览愉快,生活美好!