الدرس الثالث عشر: بناء مشروع صغير باستخدام مكتبات Python

الدرس الثالث عشر: بناء مشروع صغير باستخدام مكتبات Python
الدرس الثالث عشر: بناء مشروع صغير باستخدام مكتبات Python

 

الدرس الثالث عشر: بناء مشروع صغير باستخدام مكتبات Python 🛠️

مقدمة:

في الدرس ده، هنطبق اللي اتعلمناه في الدروس السابقة عن مكتبات Python المدمجة والخارجية. هنقوم ببناء مشروع بسيط يساعدك على فهم كيفية دمج المكتبات مع بعضها لإتمام مهام متكاملة.


وصف المشروع: برنامج لتحليل أسعار العملات 

البرنامج هيقوم بـ:

  1. جلب أسعار العملات من مصدر على الإنترنت.
  2. تحليل البيانات باستخدام مكتبة pandas.
  3. عرض الأسعار بطريقة سهلة الفهم.

خطوات تنفيذ المشروع:

1. تثبيت المكتبات المطلوبة

هنستخدم المكتبات التالية:

  • requests: لجلب البيانات من الإنترنت.
  • pandas: لتحليل وتنظيم البيانات.
  • matplotlib: لعرض البيانات في رسوم بيانية.

pip install requests pandas matplotlib

2. جلب بيانات العملات باستخدام requests

هنبدأ بجلب بيانات العملات من أحد المصادر مثل API مجاني.


import requests
# جلب بيانات العملات من مصدر مفتوح
url = "https://api.exchangerate-api.com/v4/latest/USD"
response = requests.get(url)
data = response.json()
# عرض البيانات الأساسية
print(data["rates"])

3. تنظيم البيانات باستخدام pandas

هنستخدم مكتبة pandas لتحويل البيانات إلى جدول منظم.


import pandas as pd
# تحويل بيانات العملات إلى DataFrame
rates = data["rates"]
df = pd.DataFrame(list(rates.items()), columns=["Currency", "Rate"])
print(df.head()) # عرض أول 5 صفوف

4. عرض البيانات باستخدام matplotlib

هنعرض أسعار بعض العملات مقابل الدولار في رسم بياني.


import matplotlib.pyplot as plt
# اختيار بعض العملات لعرضها
selected_currencies = ["EUR", "GBP", "JPY", "AUD", "CAD"]
filtered_df = df[df["Currency"].isin(selected_currencies)]
# رسم الرسم البياني
plt.bar(filtered_df["Currency"], filtered_df["Rate"], color="skyblue")
plt.title("Exchange Rates (USD)")
plt.xlabel("Currency")
plt.ylabel("Rate")
plt.show()

5. تحسين الكود وتغليفه في دالة

هنحول الكود لدالة بسيطة قابلة لإعادة الاستخدام.


def fetch_and_plot_rates(base_currency="USD", currencies=["EUR", "GBP", "JPY", "AUD", "CAD"]):
url = f"https://api.exchangerate-api.com/v4/latest/{base_currency}"
response = requests.get(url)
data = response.json()
rates = data["rates"]
df = pd.DataFrame(list(rates.items()), columns=["Currency", "Rate"])
filtered_df = df[df["Currency"].isin(currencies)]
plt.bar(filtered_df["Currency"], filtered_df["Rate"], color="skyblue")
plt.title(f"Exchange Rates ({base_currency})")
plt.xlabel("Currency")
plt.ylabel("Rate")
plt.show()
# استدعاء الدالة
fetch_and_plot_rates()

6. تشغيل البرنامج

عند تشغيل الكود، هيتم عرض رسم بياني بسيط يعرض أسعار العملات اللي اخترتها.


توسيع المشروع:

  • أضف خيارات للمستخدم لتحديد العملة الأساسية والعملات المراد عرضها.
  • احفظ البيانات في ملف Excel باستخدام pandas.
  • أضف واجهة رسومية بسيطة باستخدام tkinter.

خاتمة:

في الدرس ده، تعلمنا إزاي نبني مشروع بسيط بدمج مكتبات Python المختلفة. في الدرس القادم، هنستعرض مشاريع أكثر تعقيدًا مثل برامج إدارة الملفات أو أدوات ويب متقدمة.

تعليقات