最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python區(qū)塊鏈創(chuàng)建多個交易教程

 更新時間:2022年05月23日 11:58:08   作者:菜鳥教程  
這篇文章主要為大家介紹了python區(qū)塊鏈創(chuàng)建多個交易的實(shí)現(xiàn)示例教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

創(chuàng)建多個交易

各個客戶進(jìn)行的交易在系統(tǒng)中排隊(duì);礦工從這個隊(duì)列中獲取交易并將其添加到塊中.然后他們將挖掘區(qū)塊,獲勝的礦工將有權(quán)將區(qū)塊添加到區(qū)塊鏈中,從而為自己賺取一些錢.

我們將在稍后討論這個挖掘過程區(qū)塊鏈的創(chuàng)建.在我們?yōu)槎鄠€事務(wù)編寫代碼之前,讓我們添加一個小實(shí)用程序函數(shù)來打印給定事務(wù)的內(nèi)容.

顯示事務(wù)

display_transaction 函數(shù)接受事務(wù)類型的單個參數(shù).接收到的事務(wù)中的字典對象被復(fù)制到名為 dict 的臨時變量,并使用字典鍵,各種值將打印在控制臺上.

def?display_transaction(transaction):
???#for?transaction?in?transactions:
???dict?=?transaction.to_dict()
???print?("sender:?"?+?dict['sender'])
???print?('-----')
???print?("recipient:?"?+?dict['recipient'])
???print?('-----')
???print?("value:?"?+?str(dict['value']))
???print?('-----')
???print?("time:?"?+?str(dict['time']))
???print?('-----')

接下來,我們定義一個事務(wù)隊(duì)列來存儲我們的事務(wù)對象.

交易隊(duì)列

要創(chuàng)建隊(duì)列,我們聲明一個名為 transactions 列表變量>如下 

transactions = []

我們將只需將每個新創(chuàng)建的事務(wù)附加到此隊(duì)列.請注意,為簡潔起見,我們不會在本教程中實(shí)現(xiàn)隊(duì)列管理邏輯.

創(chuàng)建多個客戶端

現(xiàn)在,我們將開始創(chuàng)建事務(wù).首先,我們將創(chuàng)建四個客戶,他們將相互匯款以從其他人那里獲得各種服務(wù)或商品.

Dinesh?=?Client()
Ramesh?=?Client()
Seema?=?Client()
Vijay?=?Client()

此時,我們有四個客戶叫Dinesh,Ramesh,Seema和Vijay.我們目前假設(shè)這些客戶中的每一個都在他們的錢包中持有一些TPCoins用于交易.通過使用這些對象的標(biāo)識屬性來指定每個客戶端的標(biāo)識.

創(chuàng)建第一個事務(wù)

現(xiàn)在,我們首先啟動交易如下 :

t1?=?Transaction(
???Dinesh,
???Ramesh.identity,
???15.0
)

在此交易中,Dinesh向Ramesh發(fā)送了5個TPCoins.為了使交易成功,我們必須確保Dinesh在他的錢包里有足夠的錢來支付這筆款項(xiàng).請注意,我們需要一個genesis事務(wù)來啟動系統(tǒng)中的TPCoin循環(huán).您將在閱讀時很快編寫此genesis事務(wù)的事務(wù)代碼.

我們將使用Dinesh的私鑰對此事務(wù)進(jìn)行簽名,并將其添加到事務(wù)隊(duì)列中,如下所示 :

t1.sign_transaction()
transactions.append(t1)

在Dinesh做出的第一筆交易之后,我們將在上面創(chuàng)建的不同客戶之間創(chuàng)建更多交易.

添加更多交易

我們現(xiàn)在將創(chuàng)建幾個以上的交易,每個交易都會向另一方發(fā)放一些TPCoins.當(dāng)有人花錢時,他沒有必要在這個錢包中檢查是否有足夠的余額.無論如何,礦工將在發(fā)起交易時驗(yàn)證發(fā)件人所擁有的余額的每筆交易.

如果余額不足,礦工會將此交易標(biāo)記為無效且不會添加這個塊.

以下代碼創(chuàng)建并添加了九個以上的事務(wù).

t2?=?Transaction(
???Dinesh,
???Seema.identity,
???6.0
)
t2.sign_transaction()
transactions.append(t2)
t3?=?Transaction(
???Ramesh,
???Vijay.identity,
???2.0
)
t3.sign_transaction()
transactions.append(t3)
t4?=?Transaction(
???Seema,
???Ramesh.identity,
???4.0
)
t4.sign_transaction()
transactions.append(t4)
t5?=?Transaction(
???Vijay,
???Seema.identity,
???7.0
)
t5.sign_transaction()
transactions.append(t5)
t6?=?Transaction(
???Ramesh,
???Seema.identity,
???3.0
)
t6.sign_transaction()
transactions.append(t6)
t7?=?Transaction(
???Seema,
???Dinesh.identity,
???8.0
)
t7.sign_transaction()
transactions.append(t7)
t8?=?Transaction(
???Seema,
???Ramesh.identity,
???1.0
)
t8.sign_transaction()
transactions.append(t8)
t9?=?Transaction(
???Vijay,
???Dinesh.identity,
???5.0
)
t9.sign_transaction()
transactions.append(t9)
t10?=?Transaction(
???Vijay,
???Ramesh.identity,
???3.0
)
t10.sign_transaction()
transactions.append(t10)

當(dāng)你運(yùn)行上面的代碼,你將在隊(duì)列中有十個交易來讓礦工創(chuàng)建他們的塊.

轉(zhuǎn)儲交易

作為區(qū)塊鏈經(jīng)理,您可能會定期查看事務(wù)隊(duì)列的內(nèi)容.為此,您可以使用我們之前開發(fā)的 display_transaction 函數(shù).要轉(zhuǎn)儲隊(duì)列中的所有事務(wù),只需迭代事務(wù)列表,并為每個引用的事務(wù)調(diào)用 display_transaction 函數(shù),如下所示 :

for?transaction?in?transactions:
???display_transaction?(transaction)
???print?('--------------')

事務(wù)由虛線分隔以區(qū)分.如果你運(yùn)行上面的代碼,你會看到如下所示的交易清單 :

sender:
30819f300d06092a864886f70d010101050003818d0030818902818100bb064c99c49214
4a9f463480273aba93ac1db1f0da3cb9f3c1f9d058cf499fd8e54d244da0a8dd6ddd329e
c86794b04d773eb4841c9f935ea4d9ccc2821c7a1082d23b6c928d59863407f52fa05d8b
47e5157f8fe56c2ce3279c657f9c6a80500073b0be8093f748aef667c03e64f04f84d311
c4d866c12d79d3fc3034563dfb0203010001
-----
recipient:
30819f300d06092a864886f70d010101050003818d0030818902818100be93b516b28c6e
674abe7abdb11ce0fdf5bb728b75216b73f37a6432e4b402b3ad8139b8c0ba541a72c8ad
d126b6e1a1308fb98b727beb63c6060356bb177bb7d54b54dbe87aee7353d0a6baa93977
04de625d1836d3f42c7ee5683f6703259592cc24b09699376807f28fe0e00ff882974484
d805f874260dfc2d1627473b910203010001
-----
value:?15.0
-----
time:?2019-01-14?16:18:01.859915
-----
--------------
sender:
30819f300d06092a864886f70d010101050003818d0030818902818100bb064c99c49214
4a9f463480273aba93ac1db1f0da3cb9f3c1f9d058cf499fd8e54d244da0a8dd6ddd329e
c86794b04d773eb4841c9f935ea4d9ccc2821c7a1082d23b6c928d59863407f52fa05d8b
47e5157f8fe56c2ce3279c657f9c6a80500073b0be8093f748aef667c03e64f04f84d311
c4d866c12d79d3fc3034563dfb0203010001
-----
recipient:
30819f300d06092a864886f70d010101050003818d0030818902818100a070c82b34ae14
3cbe59b3a2afde7186e9d5bc274955d8112d87a00256a35369acc4d0edfe65e8f9dc93fb
d9ee74b9e7ea12334da38c8c9900e6ced1c4ce93f86e06611e656521a1eab561892b7db0
961b4f212d1fd5b5e49ae09cf8c603a068f9b723aa8a651032ff6f24e5de00387e4d0623
75799742a359b8f22c5362e5650203010001
-----
value:?6.0
-----
time:?2019-01-14?16:18:01.860966
-----
--------------
sender:
30819f300d06092a864886f70d010101050003818d0030818902818100be93b516b28c6e
674abe7abdb11ce0fdf5bb728b75216b73f37a6432e4b402b3ad8139b8c0ba541a72c8ad
d126b6e1a1308fb98b727beb63c6060356bb177bb7d54b54dbe87aee7353d0a6baa93977
04de625d1836d3f42c7ee5683f6703259592cc24b09699376807f28fe0e00ff882974484
d805f874260dfc2d1627473b910203010001
-----
recipient:
30819f300d06092a864886f70d010101050003818d0030818902818100cba097c0854876
f41338c62598c658f545182cfa4acebce147aedf328181f9c4930f14498fd03c0af6b0cc
e25be99452a81df4fa30a53eddbb7bb7b203adf8764a0ccd9db6913a576d68d642d8fd47
452590137869c25d9ff83d68ebe6d616056a8425b85b52e69715b8b85ae807b84638d8f0
0e321b65e4c33acaf6469e18e30203010001
-----
value:?2.0
-----
time:?2019-01-14?16:18:01.861958
-----
--------------

為簡潔起見,我只先打印列表中的交易很少.在上面的代碼中,我們打印了從第一個事務(wù)開始的所有事務(wù),除了從未添加到此列表的genesis事務(wù).由于事務(wù)定期添加到塊中,您通常只想查看尚未開采的事務(wù)列表.在這種情況下,您需要創(chuàng)建一個適當(dāng)?shù)?nbsp;for 循環(huán)來迭代尚未開采的事務(wù).

到目前為止,您已經(jīng)學(xué)會了如何創(chuàng)建客戶端,允許它們相互之間并維護(hù)要挖掘的待處理事務(wù)的隊(duì)列.現(xiàn)在,這是本教程最重要的部分,也就是創(chuàng)建一個區(qū)塊鏈,更多關(guān)于python區(qū)塊鏈創(chuàng)建交易的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python常用模塊之requests模塊用法分析

    Python常用模塊之requests模塊用法分析

    這篇文章主要介紹了Python常用模塊之requests模塊用法,結(jié)合實(shí)例形式分析了Python使用requests模塊發(fā)送GET、POST請求及響應(yīng)相關(guān)操作技巧,需要的朋友可以參考下
    2019-05-05
  • pycharm永久激活超詳細(xì)教程

    pycharm永久激活超詳細(xì)教程

    這篇文章主要介紹了pycharm永久激活超詳細(xì)教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • python 修改本地網(wǎng)絡(luò)配置的方法

    python 修改本地網(wǎng)絡(luò)配置的方法

    今天小編就為大家分享一篇python 修改本地網(wǎng)絡(luò)配置的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • python對Excel的讀取的示例代碼

    python對Excel的讀取的示例代碼

    這篇文章主要介紹了python對Excel的讀取的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • CPython中處理is與is not語句示例詳解

    CPython中處理is與is not語句示例詳解

    這篇文章主要為大家介紹了CPython中處理is與is not語句示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • Python selenium文件上傳方法匯總

    Python selenium文件上傳方法匯總

    這篇文章主要為大家詳細(xì)介紹了Python selenium文件上傳方法,selenium文件上傳的所有方法進(jìn)行整理,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Python Pyecharts繪制箱線圖詳解

    Python Pyecharts繪制箱線圖詳解

    箱形圖(Box-plot)又稱為盒須圖、盒式圖或箱線圖,是一種用作顯示一組數(shù)據(jù)分散情況資料的統(tǒng)計圖。因形狀如箱子而得名。本文將通過Python Pyecharts來繪制一些箱線圖,需要的可以參考一下
    2022-03-03
  • 基于Python3編寫一個GUI翻譯器

    基于Python3編寫一個GUI翻譯器

    PySimpleGUI就是GUI工具包,用于創(chuàng)建GUI的。本文將利用PySimpleGUI編寫一個GUI翻譯器,感興趣的小伙伴可以跟隨小編一起動手嘗試一下
    2022-08-08
  • nginx+uwsgi+django環(huán)境搭建的方法步驟

    nginx+uwsgi+django環(huán)境搭建的方法步驟

    這篇文章主要介紹了nginx+uwsgi+django環(huán)境搭建的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Python獲取list中指定元素索引的兩種方法小結(jié)

    Python獲取list中指定元素索引的兩種方法小結(jié)

    本文主要介紹了兩種在Python中獲取列表中指定元素索引的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01

最新評論

海伦市| 宁明县| 阿勒泰市| 连山| 齐齐哈尔市| 沁源县| 乌鲁木齐县| 通江县| 郎溪县| 安图县| 江北区| 驻马店市| 江安县| 武山县| 绥阳县| 玉屏| 鸡东县| 虞城县| 陕西省| 孝感市| 武穴市| 泸定县| 临桂县| 梧州市| 西畴县| 杭锦旗| 荔浦县| 崇阳县| 瑞金市| 尼玛县| 桂平市| 岑巩县| 韩城市| 九江市| 池州市| 景德镇市| 高州市| 德庆县| 台东市| 龙口市| 玛多县|