You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS Code运行Web3.py脚本提示web3/solcx/dotenv模块导入失败

问题现象

运行基于Web3.py的Solidity SimpleStorage合约部署脚本时,出现两类异常:

  • VS Code编辑器提示导入解析失败:Import "web3" could not be resolved、Import "solcx" could not be resolved、Import "dotenv" could not be resolved
  • 终端运行抛出Traceback报错,核心错误为ModuleNotFoundError: No module named 'web3'
  • 终端报错截图:终端报错输出

对应报错导入片段:

from web3 import Web3
from solcx import compile_standard, install_solc
from dotenv import load_dotenv

终端错误栈:

Traceback (most recent call last):
  File "c:\Users\ashvi\demos\web3_py_simple_storage\sam", line 3, in <module>
from web3 import Web3
ModuleNotFoundError: No module named 'web3'
问题根因

异常由两个原因共同导致:

  1. 当前运行脚本的Python环境中未安装脚本依赖的三个第三方库
  2. VS Code选中的Python解释器与终端执行安装命令的环境不匹配,导致编辑器无法识别已安装的包、终端运行时找不到对应模块
解决方案

1. 对齐VS Code与终端的Python环境

  • 打开VS Code后按Ctrl+Shift+P调出命令面板,输入Python: Select Interpreter
  • 选择当前项目要用的Python解释器(推荐使用项目本地虚拟环境,避免全局包版本冲突)
  • 打开VS Code内置终端,执行python --version,确认输出的Python版本与你刚才选中的解释器版本一致,避免环境错位。如果设备同时安装了Python2和Python3,请后续使用pip3代替pip执行安装命令。

2. 安装缺失的依赖包

在已对齐的终端中依次执行以下安装命令:

# 安装Web3.py核心库
pip install web3
# 安装Solidity编译工具(对应导入的solcx模块)
pip install py-solc-x
# 安装.env配置文件读取工具(对应导入的dotenv模块)
pip install python-dotenv

3. 验证安装结果

安装完成后执行pip list,确认已安装列表中存在以下三个条目:

  • web3
  • py-solc-x
  • python-dotenv
    回到编辑器等待3-5秒,导入解析失败的红色提示会自动消失,重新运行脚本即可。
额外注意事项

你提供的脚本存在Python缩进语法错误:Python要求代码块内的内容必须缩进4个空格,你贴出的代码中with open()、compile_standard()、json.dump()等代码块下的逻辑都没有缩进,修复依赖问题后如果报IndentationError,请参照以下格式修正缩进:

with open("./SimpleStorage.sol", "r") as file:
    # 块内代码必须缩进
    simple_storage_file = file.read()

with open("compiled_code.json", "w") as file:
    # 块内代码必须缩进
    json.dump(compiled_sol, file)

另外脚本中硬编码了钱包私钥,正式使用时请把私钥存到.env文件中,通过os.getenv()读取,避免私钥泄露造成资产损失。


内容的提问来源于stack exchange,提问作者Ashvin Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 20:51:25