ในการแปลงสกุลเงิน เพื่อให้ข้อมูลมีความทันสมัยที่สุด จึงต้องออนไลน์ ใช้ข้อมูลจากอินเทอร์เน็ต ในกูเกิลค้นคีย์ "conversion monetary api" จะพบเว็บไซต์ให้บริการด้านนี้จำนวนมาก ผมเลือก fixer.io
fixer.io เป็นบริการ API ให้ข้อมูลการแลกเปลี่ยนสกุลเงิน (ใช้งานได้ฟรี) โดยใช้ข้อมูลจากธนาคาร European Central มีการปรับข้อมูลทุกวันระหว่างเวลา 3PM CET
API สำหรับแปลงสกุลเงิน 2 สกุล
GET http://api.fixer.io/latest?symbols=USD,GBP ผลลัพธ์ { "base": "EUR", "date": "2015-11-20", "rates": { "GBP": 0.701, "USD": 1.0688 } }
การเขียนโปรแกรมแปลงสกุลเงินในภาษาไพทอนนี้ ผมเลือกใช้โมดูล requests เข้ามาช่วยในเรื่องการดึงข้อมูลจาก API
สามารถติดตั้งโมดูล requests ได้จากคำสั่ง pip:
pip install requests
มาลงมือลองเขียนโค้ดกันดูนะครับ
import requestsผลลัพธ์
symbols = []
symbols.append("USD") # เพิ่ม index แรก คือ "USD"
symbols.append("THB") # เพิ่ม index ที่ 2 คือ "THB"
r = requests.get('https://api.fixer.io/latest?symbols='+symbols[0]+','+symbols[1]) # ดึงข้อมูล
rates = eval(r.text) # ดึงข้อมูล json ออกมาจากสตริง
symbols1 = rates['rates'][symbols[0]] # ดึงข้อมูลสกุลเงิน "USD" ออกมา
symbols2 = rates['rates'][symbols[1]] # ดึงข้อมูลสกุลเงิน "THB" ออกมา
print("Currency Converter : {} {} = {} {}".format(symbols1, symbols[0], symbols2,symbols[1])) # แสดงผล
Currency Converter : 1.0688 USD = 38.199 THB
จะเห็นได้ว่า บทความนี้ผมได้ใช้ทั้งเรื่อง list , API , eval , โมดูล และ String formatting เข้ามาเกี่ยวข้องด้วย
อ่านเพิ่มเติม String formatting ใน Python
fixer.io API http://fixer.io
ลองนำไปประยุกต์ใช้งานกันดูนะครับ
ติดตามบทความต่อไปนะครับ
ขอบคุณครับ
ใช้โปรแกรมไร
ตอบลบ