泰山眾籌商城系統開發(實現方案)丨泰山眾籌商城開發原始碼及功能

xiaofufu發表於2023-02-21


新零售指的就是新型零售商業模式,將線上與線下進行融合,消費者可以從線上進行選物,然後到線下門店進實際體驗,另外還可以透過大資料來了解消費者的消費習慣,從而提供更加完善的服務。


from web3 import Web3, HTTPProvider

import json, os


rpc = "HTTP合約通訊地址(http url)"

address1 = "個人合約地址"

address2 = "智慧合約地址"

test_key = "個人錢包秘鑰地址"


# 連線錢包地址:開發案例及原始碼I35需求7O98詳細O7I8

web3 = Web3(HTTPProvider(rpc))


# 結果為true表示連線成功

connect = web3.isConnected()

print(connect)


# 轉賬

def transfer_eth(amount, gas_price=20, gas_limit=21000):

    # 帶簽名的合約寫操作

    params = {

        # 傳送代幣地址

        'from': address1,

        # 接收代幣的地址

        'to': address2,


        # 代幣數量,以wei為單位,可以是字串和int型別 web3.toWei(數值,代幣單位)

        # 為了方便調通程式碼,我們這裡用wei來做單位,正常都是用ether。

        # 1 ether = 1 x 10^18wei = 1 x 10^9 Gwei

        'value': web3.toWei(amount, 'wei'),


        # 每個在鏈上可以執行的命令都設定了一個消耗的gas值,例:PUSH操作需要消耗3個gas,一次轉賬一般要消耗21000 gas,gas使用ether來支付

        # 1 ether = 1 x 10^18wei = 1 x 10^9 Gwei, 無論您執行的命令是成功還是失敗,都需要支付計算費用

        # 簡易理解:gas_limit 是一次交易中gas的可用上限

        'gas': gas_limit,


        # 透過gasPrice可以節省礦工費用,但也會減慢礦工打包的速度。因為,礦工會優先打包gas price設定高的交易,如果您想加快轉賬,您可以把gas price設定得更高,這樣您就可以插隊靠前

        # 一次轉賬一般要消耗21000 gas,如果你設定的gas Price = 1000000000wei = 1Gwei,則此次轉賬的交易手續費為:TxFee = 21000 Gwei = 0.000021 ether

        # A賬戶欲向B賬戶轉賬4 ether,則要求A賬戶至少要有 4 + 0.000021 = 4. 000021 ethrer

        # 簡易理解:gasPrice就是你想用多少氣費進行交易,為什麼設定20,是因為當前市場價20就夠了。如果你有錢,想更快也可以設定成25甚至更高

        'gasPrice': web3.toWei(gas_price, 'gwei'),


        # 'nonce': web3.eth.getTransactionCount(主錢包地址),主要標記當前最新的交易號是多少,算是記錄在交易佇列中的位置

        'nonce': web3.eth.getTransactionCount(address1),

    }

    # web3.eth.account.signTransaction用賬戶對交易簽名(轉賬需要的引數,from錢包地址的秘鑰)

    signed_tx = web3.eth.account.signTransaction(params, private_key=test_key)


    # 交易傳送並獲取交易hash

    tx_hash = web3.eth.sendRawTransaction(signed_tx.rawTransaction)

    return tx_hash



print("執行轉賬後的交易hash值:", transfer_eth(100))


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69956839/viewspace-2936168/,如需轉載,請註明出處,否則將追究法律責任。

相關文章