Իրական ժամանակի արժույթի փոխարկիչ՝ օգտագործելով Python Tkinter


Այսօր գլոբալացված աշխարհում դրամական միջոցների փոխակերպումը հրամայական դեր է խաղում տարբեր դրամական փոխանակումների և համաշխարհային բորսաներում: Անկախ նրանից՝ դուք կազմակերպում եք ուղևորություն արտասահման, վերահսկում եք արտաքին ձեռնարկությունները կամ վարում եք բազմազգ առևտուր, իրական ժամանակում գումարի փոփոխության հասնելը հիմնական է: Այս հոդվածում մենք կուսումնասիրենք, թե ինչպես կարելի է իրական ժամանակում փողի փոխարկիչ կառուցել՝ օգտագործելով Python Tkinter-ը՝ տարածված GUI գործիքակազմը: Օգտվելով Python-ի և Tkinter-ի հզորությունից՝ պատրաստ է ստեղծել բնազդային և օգտագործողի համար հարմար հավելված, որը ոչ թե կանխիկի ճշգրիտ փոխակերպումներ է անում, այլ հաճախորդներին տրամադրում է ինտուիտիվ ինտերֆեյս՝ մուտքագրելու իրենց ուզած գումարները և ընտրելու հիմնական և նպատակային դրամական ստանդարտները: Հոդվածի միջոցով մենք կփորփրենք հիմնարար հաշվարկները և քայլ առ քայլ օգտագործումը և ցույց կտանք տարբեր կարիքները բավարարելու տարբերակիչ մոտեցումներ:

Արժույթի փոխարկիչ՝ օգտագործելով Python Tkinter

Python Tkinter-ի օգտագործմամբ կանխիկի իրական ժամանակում փոխակերպումը ներառում է հաճախորդի գրաֆիկական ինտերֆեյսի (GUI) հավելվածի ստեղծում, որը թույլ է տալիս հաճախորդներին անմիջապես փոխել դրամական ստանդարտները: Դիմումը կատարվում է քայլ առ քայլ նախապատրաստումից հետո՝ սկսած հաճախորդի կողմից փոփոխվող գումարի մուտքագրմամբ և հիմնական և նպատակային դրամական ստանդարտների ընտրությամբ: Իրական ժամանակի առևտրի դրույքաչափեր բերելու համար հավելվածը միջատոմային է դրամական առևտրի փոխարժեքի API-ի հետ: Դա կարելի է անել՝ օգտագործելով «հարցումների» գրադարանը, որը թույլ է տալիս HTTP պահանջներ ներկայացնել API-ի վերջնակետին: API-ն վերադարձնում է JSON ռեակցիա, որը պարունակում է ամենավերջին առևտրի դրույքաչափերը տարբեր դրամական ձևերի համար: Հավելվածը հանում է ընտրված բազայի և նպատակային դրամական ստանդարտների միջև փոփոխության արագությունը API ռեակցիայից:

Մոտեցում

  • Մոտեցում 1 – Օգտագործելով վեբ API-ն արժույթի փոխարկման համար

  • Մոտեցում 2 – Օգտագործելով նախապես բեռնված արժույթի փոխարկման աղյուսակը

  • Մոտեցում 3 - python գրադարանի օգտագործումը արժույթի փոխարկման համար

Մոտեցում 1. Օգտագործելով վեբ API-ն արժույթի փոխարկման համար

Առաջնային մոտեցումը ներառում է վեբ API-ի օգտագործումը` իրական ժամանակում արժույթի առևտրի փոխարժեքներ ստանալու և փոփոխությունն իրականացնելու համար: Կարող է օգտագործել հայտնի API-ներ, ինչպիսիք են Open Trade Rates կամ Exchange Rate-API՝ առաջարկելու ամենավերջին առևտրի դրույքաչափերը: Ահա այս մոտեցումն իրականացնելու քայլերը

Ալգորիթմ

  • Քայլ 1 − Ներկայացրե՛ք անհրաժեշտ փաթեթները:

  • Քայլ 2 − convert_currency ֆունկցիայի ստեղծում():

  • Քայլ 3 - կանչեք get() մեթոդը՝ գումարը, բազային_արժույթը և թիրախը ստանալու համար _արժույթ օգտագործողից:

  • Քայլ 4 - Ստացեք իրական ժամանակի առևտրի դրույքաչափերը:

  • Քայլ 5 - Սահմանեք պիտակները պատուհանի վրա և վերջապես գործարկեք հավելվածը:

Օրինակ

import tkinter as tk
import requests

def convert_currency():
    amount = float(entry.get())
    base_currency = base_currency_var.get()
    target_currency = target_currency_var.get()

    response = requests.get(f"https://api.exchangerate-api.com/v4/latest/{base_currency}")
    data = response.json()

    conversion_rate = data['rates'][target_currency]
    converted_amount = amount * conversion_rate

    result_label.config(text=str(converted_amount))

window = tk.Tk()
window.title("Currency Converter")

label1 = tk.Label(window, text="Amount:")
label1.pack()

entry = tk.Entry(window)
entry.pack()

label2 = tk.Label(window, text="Base Currency:")
label2.pack()

base_currency_var = tk.StringVar(window)
base_currency_var.set("USD")  # Default base currency

base_currency_dropdown = tk.OptionMenu(window, base_currency_var, "USD", "EUR", "GBP", "INR")
base_currency_dropdown.pack()

label3 = tk.Label(window, text="Target Currency:")
label3.pack()

target_currency_var = tk.StringVar(window)
target_currency_var.set("EUR")  # Default target currency

target_currency_dropdown = tk.OptionMenu(window, target_currency_var, "USD", "EUR", "GBP", "INR")
target_currency_dropdown.pack()

label4 = tk.Label(window, text="Converted Amount:")
label4.pack()

result_label = tk.Label(window, text="")
result_label.pack()

button = tk.Button(window, text="Convert", command=convert_currency)
button.pack()

window.mainloop()

Արդյունք

Հավելվածը գործարկելուց հետո կհայտնվի GUI պատուհան՝ գումարի մուտքագրման դաշտերով, փոխարկված գումարի պիտակներով և «Փոխակերպել» կոճակով: Օգտագործողները կարող են մուտքագրել գումարը մուտքագրման դաշտում և սեղմել «Փոխակերպել» կոճակը՝ փոխարկված գումարը արդյունքի պիտակի մեջ տեսնելու համար:

Մոտեցում 2. Նախաբեռնված արժույթի փոխարկման աղյուսակի օգտագործում

Մի քանի սցենարներում վեբ API-ին հասնելը կարող է անհասանելի լինել: Նման դեպքերում մենք կարող ենք օգտագործել կանխիկի փոխակերպման նախապես բեռնված աղյուսակը: Ահա այս մոտեցման քայլերը

Ծրագրի կոդը գործարկելու համար անհրաժեշտ է մի քանի քայլեր, որոնք թվարկված են ստորև −

  • Քայլ 1 - Ներմուծեք tkinter մոդուլը: Կազմեք փողի փոխակերպման սեղան:

  • Քայլ 2 − Պահանջվող պահերի գրադարաններ և ուսումնասիրեց փոփոխության աղյուսակը:

  • Քայլ 3 − Սահմանեք convert_currency() անունով ֆունկցիան և գրեք անհրաժեշտ կոդը և պայմանը՝ օգտագործողից հոսանքը ստանալու համար:

  • Քայլ 4 - Գործարկեք հավելվածը:

Օրինակ

import tkinter as tk

conversion_table = {
    "USD": {
        "EUR": 0.85,
        "GBP": 0.72,
        "JPY": 109.71,
        "CAD": 1.22,
        "AUD": 1.32
    },
    "EUR": {
        "USD": 1.18,
        "GBP": 0.85,
        "JPY": 129.67,
        "CAD": 1.47,
        "AUD": 1.59
    },
    "GBP": {
        "USD": 1.39,
        "EUR": 1.18,
        "JPY": 151.37,
        "CAD": 1.70,
        "AUD": 1.84
    },
    "JPY": {
        "USD": 0.0091,
        "EUR": 0.0077,
        "GBP": 0.0066,
        "CAD": 0.011,
        "AUD": 0.012
    },
    "CAD": {
        "USD": 0.82,
        "EUR": 0.68,
        "GBP": 0.59,
        "JPY": 87.47,
        "AUD": 1.08
    },
    "AUD": {
        "USD": 0.76,
        "EUR": 0.63,
        "GBP": 0.54,
        "JPY": 81.75,
        "CAD": 0.93
    }
}

def convert_currency():
    amount = float(entry.get())
    base_currency = base_currency_var.get()
    target_currency = target_currency_var.get()

    if base_currency == target_currency:
        converted_amount = amount
    else:
        conversion_rate = conversion_table[base_currency][target_currency]
        converted_amount = amount * conversion_rate

    result_label.config(text=str(converted_amount))

window = tk.Tk()
window.title("Currency Converter")

label1 = tk.Label(window, text="Amount:")
label1.pack()

entry = tk.Entry(window)
entry.pack()

label2 = tk.Label(window, text="Base Currency:")
label2.pack()

base_currency_var = tk.StringVar()
base_currency_var.set("USD")

base_currency_menu=tk.OptionMenu(window,base_currency_var,*conversion_table.keys())
base_currency_menu.pack()

label3 = tk.Label(window, text="Target Currency:")
label3.pack()

target_currency_var = tk.StringVar()
target_currency_var.set("EUR")

target_currency_menu=tk.OptionMenu(window,target_currency_var,*conversion_table.keys())
target_currency_menu.pack()

label4 = tk.Label(window, text="Converted Amount:")
label4.pack()

result_label = tk.Label(window, text="")
result_label.pack()

button = tk.Button(window, text="Convert", command=convert_currency)
button.pack()

window.mainloop()

Արդյունք

Եզրակացություն

Եզրակացության մեջ մենք ուսումնասիրեցինք, թե ինչպես կարելի է իրական ժամանակում կանխիկի փոխարկիչ ստեղծել՝ օգտագործելով Python Tkinter-ը: Մենք ուսումնասիրեցինք երեք տարբերակիչ մոտեցում՝ հաշվելով վեբ API-ի, նախապես բեռնված փողի փոխակերպման աղյուսակի և Python գրադարանի օգտագործումը փողի փոփոխության համար: Յուրաքանչյուր մոտեցում ունի իր նախասիրությունները և կարող է ընտրվել որոշակի նախադրյալների հիման վրա: Քայլ առ քայլ կատարումից հետո և ըմբռնելով ներառված հաշվարկները՝ օգտատերերը պատրաստում են փողի փոխարկիչի հավելված և իրական ժամանակում փողի փոփոխությունները հեշտությամբ կատարում: