Ubuntu16.04下VSCode运行Python3代码遇ImportError: No module named web3求助
解决VSCode运行Python3代码找不到pip3安装包的问题
你遇到的核心问题是VSCode默认使用了Python2的解释器,而web3包是通过pip3安装在Python3环境中的,所以运行代码时会出现找不到包的错误。下面是具体的解决步骤:
1. 切换VSCode的Python解释器到Python3
这是最直接的解决方法:
- 打开VSCode,查看窗口左下角,会显示当前使用的Python版本(比如
Python 2.7.x),点击这个版本号; - 在弹出的顶部面板中,选择和你
pip3对应的Python3版本(比如Python 3.5.x); - 或者使用快捷键
Ctrl+Shift+P(Linux环境),输入Python: Select Interpreter,然后在列表中选中Python3的解释器。
切换完成后,重新运行pyweb3.py,应该就能正常找到web3包了。
2. 手动配置launch.json指定Python路径(若切换解释器无效)
如果上面的方法没生效,可以手动配置运行环境的Python路径:
- 打开VSCode的「运行和调试」面板(快捷键
Ctrl+Shift+D),点击「创建launch.json文件」,选择「Python」环境; - 在生成的
launch.json中,添加pythonPath字段,指定你的Python3可执行文件路径。你可以先在终端里用which python3命令查到路径(比如/usr/bin/python3),然后配置如下:{ "version": "0.2.0", "configurations": [ { "name": "Python: Current File", "type": "python", "request": "launch", "program": "${file}", "pythonPath": "/usr/bin/python3" } ] } - 保存配置后,重新运行代码即可。
3. 补充:在代码中添加Shebang行(可选)
你可以在pyweb3.py的第一行添加Shebang注释,明确指定用Python3运行:
#!/usr/bin/env python3
然后给文件添加执行权限:
chmod +x pyweb3.py
这个步骤主要是让终端直接运行脚本时默认使用Python3,VSCode里如果已经选对解释器,这个不是必须的,但可以作为双重保障。
验证方法
切换解释器后,在VSCode的终端里运行以下命令,确认当前环境是Python3:
python --version # 应显示Python 3.5.x pip list | grep web3 # 应能看到web3包的信息
内容的提问来源于stack exchange,提问作者Nash
相关产品推荐
相关产品推荐

