在VSCode中导入运行CLRS Python项目遇模块找不到错误,求解决方法
解决CLRS Python代码导入同目录模块失败的问题
针对你遇到的ModuleNotFoundError: No module named 'randomized_quicksort'问题,本质是Python找不到同目录下的模块文件,下面是几种直接可行的解决方法:
方法1:在脚本里手动添加模块路径
在randomized_select.py的最开头(#!/usr/bin/env python3之后)添加以下代码:
import sys import os # 将当前脚本所在目录添加到Python模块搜索路径 sys.path.append(os.path.dirname(os.path.abspath(__file__)))
添加后再运行脚本,Python就能找到同目录下的randomized_quicksort.py文件了。
方法2:修改VS Code的运行配置
- 打开VS Code的「运行和调试」面板(快捷键Ctrl+Shift+D)
- 点击「创建launch.json文件」,选择「Python」环境
- 在生成的
launch.json里,确保配置包含"cwd": "${fileDirname}",完整配置示例:
{ "version": "0.2.0", "configurations": [ { "name": "Python: Current File", "type": "python", "request": "launch", "program": "${file}", "cwd": "${fileDirname}", "console": "integratedTerminal" } ] }
这个配置会让VS Code运行脚本时,把脚本所在的Chapter 9目录作为当前工作目录,Python会自动搜索该目录下的模块。
方法3:标记目录为Python包
在Chapter 9文件夹里创建一个空的__init__.py文件(文件名必须是这个),把该目录标记为Python可识别的包。不过这个方法需要确保工作目录正确,配合前两种方法使用效果更好。
内容的提问来源于stack exchange,提问作者likejudo
相关产品推荐
相关产品推荐

