Mac系统下.py文件首次双击无法打开,预开IDLE shell才可正常打开求助
问题原因
该问题是Python 3.10官方安装包自带IDLE在Mac Big Sur 11.6系统下的已知适配bug:
- 直接双击.py文件触发IDLE冷启动时,IDLE进程的初始化逻辑存在时序问题,未完成Python运行时环境的格式关联注册就尝试加载目标文件,因此提示无法识别「Python Script」格式
- 预先打开Python shell后,对应Python运行时进程已经在后台完成格式关联注册,此时双击.py文件的请求会直接发送给已存活的IDLE进程,不会触发格式识别错误
修复方案
方案1:重新绑定.py文件默认打开方式(操作最简单,优先尝试)
- 右键任意.py文件,选择「显示简介」
- 展开「打开方式」板块,点击下拉框选择「其他」
- 手动前往
/Applications/Python 3.10/路径,选中目录下的IDLE.app,勾选「始终以此方式打开」后点击「添加」 - 回到简介面板,点击「全部更改」,确认后关闭面板即可
方案2:手动修复系统启动关联
- 打开终端,执行如下命令:
defaults write com.apple.LaunchServices LSHandlers -array-add '{LSHandlerContentType = "public.python-script"; LSHandlerRoleAll = "org.python.IDLE";}' - 执行完成后重启电脑即可生效
方案3:替代方案
如果原生IDLE的兼容问题频繁出现,可更换为VS Code、PyCharm社区版等代码编辑器作为.py文件的默认打开工具,无此类启动兼容问题,功能覆盖度也更高。
内容的提问来源于stack exchange,提问作者Tony
相关产品推荐
相关产品推荐

