ایجاد چندین معاملات

ساخت وبلاگ

معاملات انجام شده توسط مشتریان مختلف در سیستم صف می شود. معدنچیان معاملات را از این صف انتخاب می کنند و آن را به بلوک اضافه می کنند. آنها سپس این بلوک را مین می کنند و معدنکار برنده این امتیاز را خواهد داشت که این بلوک را به blockchain اضافه کند و از این طریق مقداری پول برای خودش بدست آورد.

ما این روند استخراج را بعداً هنگام بحث در مورد ایجاد blockchain شرح خواهیم داد. قبل از نوشتن کد برای چندین معاملات ، اجازه دهید یک تابع ابزار کوچک برای چاپ محتوای یک معامله معین اضافه کنیم.

نمایش معامله

عملکرد Display_Transaction یک پارامتر واحد از نوع معامله را می پذیرد. شیء فرهنگ لغت در معامله دریافت شده به یک متغیر موقتی به نام DICT کپی می شود و با استفاده از کلیدهای فرهنگ لغت ، مقادیر مختلف روی کنسول چاپ می شوند.

def display_transaction (معامله): #برای معامله در معاملات: dict = transaction. to_dict () چاپ ("فرستنده:" + دیکته ['ارسال کننده']) چاپ ('-----') چاپ ("گیرنده:" +DICT ['گیرنده']) چاپ ('-----') چاپ ("مقدار:" + str (dict ["مقدار"]) چاپ ('-----') چاپ ("زمان:"+ str (dict ['time'])) چاپ ('-----')

در مرحله بعد ، ما یک صف معامله را برای ذخیره اشیاء معامله خود تعریف می کنیم.

صف معامله

برای ایجاد یک صف ، ما یک متغیر لیست جهانی به نام معاملات را به شرح زیر اعلام می کنیم -

معاملات = []

ما به سادگی هر معامله تازه ایجاد شده را به این صف اضافه خواهیم کرد. لطفاً توجه داشته باشید که برای کوتاه بودن ، ما منطق مدیریت صف را در این آموزش پیاده سازی نمی کنیم.

ایجاد چندین مشتری

اکنون ، ما شروع به ایجاد معاملات خواهیم کرد. اول ، ما چهار مشتری ایجاد خواهیم کرد که برای به دست آوردن خدمات مختلف یا کالاهای دیگر از دیگران پول به یکدیگر ارسال می کنند.

dinesh = client () ramesh = client () seema = client () vijay = client ()

در این مرحله ، ما چهار مشتری به نام Dinesh ، Ramesh ، Seema و Vijay داریم. ما در حال حاضر فرض می کنیم که هر یک از این مشتریان برخی از TPCOIN ها را در کیف پول خود برای ترانزیت نگه می دارند. هویت هر یک از این مشتری ها با استفاده از خاصیت هویت این اشیاء مشخص می شود.

ایجاد اولین معامله

اکنون ، ما اولین معامله خود را به شرح زیر آغاز می کنیم -

T1 = معامله (Dinesh ، Ramesh. Identity ، 15. 0)

در این معامله ، Dinesh 5 TPCoin را به RAMESH ارسال می کند. برای موفقیت در معامله ، ما باید اطمینان حاصل کنیم که دینس برای این پرداخت پول کافی در کیف پول خود دارد. توجه داشته باشید که ، ما برای شروع گردش خون tpcoin در سیستم به یک معامله پیدایش نیاز خواهیم داشت. شما کد معامله را برای این معامله پیدایش به مدت کوتاهی که در ادامه می خوانید ، می نویسید.

ما این معامله را با استفاده از کلید خصوصی Dinesh امضا خواهیم کرد و آن را به صف معامله به شرح زیر اضافه خواهیم کرد -

T1. Sign_Transaction () معاملات. برنامه (T1)

پس از اولین معامله انجام شده توسط دینس ، ما چندین معاملات دیگر بین مشتری های مختلفی که در بالا ایجاد کردیم ایجاد خواهیم کرد.

اضافه کردن معاملات بیشتر

اکنون چندین معامله دیگر ایجاد خواهیم کرد ، هر معامله ای که چند TPCoin را به طرف دیگر ارائه می دهد. وقتی کسی پول خرج می کند ، لازم نیست که او مجبور شود تعادل کافی را در این کیف پول بررسی کند. به هر حال معدنچی می تواند هر معامله را برای تعادل که فرستنده هنگام شروع معامله دارد ، تأیید کند.

در صورت عدم تعادل کافی ، معدنکار این معامله را نامعتبر می کند و آن را به این بلوک اضافه نمی کند.

کد زیر نه معاملات دیگر را به صف ما ایجاد و اضافه می کند.

T2 = معامله (Dinesh ، Seema. Identity ، 6. 0) T2. Sign_Transaction () معاملات. Append (T2) T3 = معامله (Ramesh ، Vijay. Identity ، 2. 0) t3. sign_transaction () Transactions. Append (T3) T4 = معامله (معامله (T3)Seema ، Ramesh. Identity ، 4. 0) T4. Sign_Transaction () Transactions. Append (T4) T5 = معامله (Vijay ، Seema. Identity ، 7. 0) T5. Sign_Transaction () Transactions. Append (T5) T6 = معامله (RAMESH ، SEEMA. هویت ، 3. 0) T6. Sign_Transaction () Transactions. Append (T6) T7 = معامله (SeeMa ، Dinesh. Identity ، 8. 0) T7. Sign_Transaction () Transactions. Append (T7) T8 = معامله (Seema ، Ramesh. Identity ، 1. 0)T8. Sign_Transaction () Transactions. Append (T8) T9 = معامله (Vijay ، Dinesh. Identity ، 5. 0) t9. sign_transaction () معاملات.) معاملات. (T10)

هنگامی که کد فوق را اجرا می کنید ، ده معاملات در صف برای معدنچیان برای ایجاد بلوک های خود خواهید داشت.

معاملات

به عنوان یک مدیر blockchain ، ممکن است به طور دوره ای دوست داشته باشید محتوای صف معامله را مرور کنید. برای این منظور می توانید از عملکرد Display_Transaction که قبلاً توسعه داده ایم استفاده کنید. برای ریختن کلیه معاملات در صف ، فقط لیست معاملات را تکرار کنید و برای هر معامله ارجاع شده ، همانطور که در اینجا نشان داده شده است با عملکرد Display_Transaction تماس بگیرید -

برای معامله در معاملات: display_transaction (معامله) چاپ ('----------------')

معاملات برای تمایز توسط یک خط متراکم از هم جدا می شوند. اگر کد فوق را اجرا کنید ، لیست معاملات را مطابق شکل زیر مشاهده می کنید - < pan> به عنوان مدیر blockchain ، ممکن است به طور دوره ای دوست داشته باشید محتوای صف معامله را مرور کنید. برای این منظور می توانید از عملکرد Display_Transaction که قبلاً توسعه داده ایم استفاده کنید. برای ریختن کلیه معاملات در صف ، فقط لیست معاملات را تکرار کنید و برای هر معامله ارجاع شده ، همانطور که در اینجا نشان داده شده است با عملکرد Display_Transaction تماس بگیرید -

برای معامله در معاملات: display_transaction (معامله) چاپ ('----------------')

معاملات برای تمایز توسط یک خط متراکم از هم جدا می شوند. اگر کد فوق را اجرا کنید ، لیست معاملات را مطابق شکل زیر مشاهده می کنید - به عنوان یک مدیر blockchain ، ممکن است بطور دوره ای دوست داشته باشید محتوای صف معامله را مرور کنید. برای این منظور می توانید از عملکرد Display_Transaction که قبلاً توسعه داده ایم استفاده کنید. برای ریختن کلیه معاملات در صف ، فقط لیست معاملات را تکرار کنید و برای هر معامله ارجاع شده ، همانطور که در اینجا نشان داده شده است با عملکرد Display_Transaction تماس بگیرید -

برای معامله در معاملات: display_transaction (معامله) چاپ ('----------------')

بهترین استراتژی معاملات...
ما را در سایت بهترین استراتژی معاملات دنبال می کنید

برچسب : نویسنده : صدرا ذوالریاستین بازدید : 29 تاريخ : چهارشنبه 18 مرداد 1402 ساعت: 11:53