web3-python:使用python调用智能合约交互

本文介绍了如何使用Python的Web3.py库在不同的区块链网络上进行智能合约交互,包括查询ETH和ERC20代币余额,以及进行转账操作。详细讲解了安装Web3.py、设置RPC节点、获取余额、转账的方法,并提供了代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装

python、pycharm这些环境和开发工具大家自行安装即可,网上一搜都是教程,比我写的好很多,这部分内容不再赘述。
web3py文档:https://web3py.readthedocs.io/en/stable/index.html
web3py应该是python上跟智能合约交互最好用的包了,首先我们安装一下。

直接使用:pip install web3 进行安装。

教程

查询余额

我们新建一个py文件,开始编码吧~

from web3 import Web3, HTTPProvider

address = '0xxx'
rpc = 'https://bsc-dataseed1.binance.org:443'

web3 = Web3(HTTPProvider(rpc))
balance = web3.fromWei(web3.eth.getBalance(address), "ether")
print(balance)

这部分代码就是展示一个地址的ETH余额的代码。

开头一定要引用web的包。

address就是你的地址,这里填上即可。

rpc这个参数大家应该比较熟悉了,每个类evm的公链都有很多rpc,这里罗列一些,如果没有你需要的rpc,去谷歌搜索即可。

  • Ethereum | https://cloudflare-eth.com

  • BSC | https://bsc-dataseed1.binance.org:443

  • Ploygon | https://rpc-mainnet.matic.network

  • Fantom | https://rpcapi.fantom.network

当你不知道某公链的RPC,可以去chainlist 搜索,链接小狐狸钱包即可很快速的添加你想要的公链RPC。

好了,我们继续说代码。后面就是实例化了web3。

调用了getBalance这方法去获取余额,这里只需要传入地址即可获取改地址的ETH余额。如果RPC是BSC的则是BNB余额。切换公链只需要修改RPC,其他都是一样的代码。

fromWei这个方法是进行了一下单位换算,ETH的最小单位为wei,1个ETH相当于10的8次方wei。通常,大家也使用Gwei作为展示单位。比较常用的就是eth,Gwei和wei。
gwei
最后我们打印出来balance,就可以看到我们的余额了。你可以找一个你的钱包去试试这段代码!

显示ETH余额完毕,下面来看看如何显示你的ERC-20 Token余额。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值