أشهر 5 مكتبات بايثون يجب أن تعرفها هي: Requests للتعامل مع واجهات برمجة التطبيقات (APIs)، وNumPy للحسابات العددية، وPandas لتحليل البيانات، وMatplotlib للرسوم البيانية، وTensorFlow لبناء نماذج الذكاء الاصطناعي. ستتعرف في هذا المقال على ما تقدمه كل مكتبة، ومتى تستخدمها، مع مثال كود قصير يمكنك تشغيله مباشرة.
قوة بايثون لا تأتي من اللغة وحدها، بل من آلاف المكتبات التي تختصر عليك كتابة الكود من الصفر. هذه المكتبات الخمس تحديدًا تغطي أهم ما يحتاجه أي مبرمج بايثون: جلب البيانات، والحساب عليها، وتحليلها، وعرضها، ثم بناء نماذج تتعلم منها.
ما هي مكتبة بايثون وكيف تثبّتها؟
مكتبة بايثون (Python Library) هي مجموعة من الأكواد الجاهزة التي توفر دوال وفئات (Functions and Classes) لمهمة أو مجال معين. بدل أن تكتب كود إرسال طلبات الإنترنت بنفسك، تستورد مكتبة جاهزة وتستخدمها في سطر واحد.
أشهر طريقة للتثبيت هي أداة pip. ويُفضل أن تنشئ بيئة افتراضية (Virtual Environment) لكل مشروع حتى لا تتعارض إصدارات المكتبات بين مشاريعك:
python -m venv .venv
source .venv/bin/activate # على ويندوز: .venv\Scripts\activate
python -m pip install requests numpy pandas matplotlib tensorflowبعد التثبيت تستورد المكتبة في بداية برنامجك بجملة import، سواء كاملة مثل import numpy as np أو جزءًا منها مثل from numpy import array. وإن أردت أداة أسرع لإدارة البيئات والمكتبات فجرّب uv، وهي تنتشر بسرعة بين مطوري بايثون.

Requests: للتفاعل مع واجهات برمجة التطبيقات (APIs)
Requests مكتبة بسيطة تتيح لك إرسال طلبات HTTP بأنواعها (GET وPOST وPUT وDELETE) واستقبال الاستجابة من الخادم (Server) بتنسيقات مثل JSON وHTML. هي الخيار الأول عندما تريد جلب بيانات من موقع أو خدمة خارجية.
متى تستخدمها؟
- جلب بيانات من خدمة ويب، مثل أسعار العملات أو حالة الطقس.
- إرسال بيانات إلى خادم، مثل تسجيل مستخدم أو رفع نموذج.
- ربط برنامجك بخدمات خارجية، مثل خدمات البريد الإلكتروني أو نماذج الذكاء الاصطناعي عبر واجهاتها.
مثال عملي
هذا المثال يجلب معلومات مستودع بايثون الرسمي على GitHub ولا يحتاج إلى مفتاح API:
import requests
url = "https://api.github.com/repos/python/cpython"
try:
response = requests.get(url, timeout=10)
response.raise_for_status() # يرفع خطأ إذا لم يكن الطلب ناجحًا
data = response.json() # تحويل الاستجابة إلى dictionary
print("Repository:", data["full_name"])
print("Stars:", data["stargazers_count"])
except requests.RequestException as error:
print("Request failed:", error)لاحظ عادتين مهمتين: تحديد timeout حتى لا يتوقف برنامجك للأبد، واستخدام raise_for_status() لاكتشاف الأخطاء مبكرًا. وإن احتجت لاحقًا إلى طلبات غير متزامنة (Async) فمكتبة httpx تقدم واجهة قريبة جدًا من Requests.
NumPy: للحسابات العددية والجبر الخطي
NumPy هي أساس الحوسبة العلمية في بايثون. تقدم نوعًا خاصًا من المصفوفات (Arrays) عناصرها من نوع واحد، وتنفذ العمليات الحسابية عليها دفعة واحدة وبسرعة أكبر بكثير من القوائم العادية (Lists). ومعظم مكتبات البيانات والذكاء الاصطناعي، ومنها Pandas، مبنية عليها.
متى تستخدمها؟
- التحليل الإحصائي: المتوسط (Mean) والانحراف المعياري (Standard Deviation).
- توليد أرقام عشوائية للمحاكاة (Simulation).
- عمليات الجبر الخطي مثل ضرب المصفوفات وحل المعادلات الخطية.
مثال عملي
import numpy as np
a = np.array([1, 2, 3, 4])
print(a.shape) # (4,)
print(a.dtype) # int64 على أغلب الأجهزة
b = a * 2 # ضرب كل عنصر في 2 بدون حلقة تكرار
print(b) # [2 4 6 8]
print(a.mean()) # 2.5
print(a.std()) # الانحراف المعياريالفكرة الأهم هنا هي العمليات المتجهة (Vectorization): تكتب a * 2 بدل حلقة for، فيصبح الكود أقصر وأسرع.
Pandas: لمعالجة البيانات وتحليلها
Pandas هي المكتبة الأشهر لتحليل البيانات في بايثون، وهي مبنية على NumPy. تعتمد على هيكل بيانات (Data Structure) اسمه DataFrame، وهو جدول من صفوف وأعمدة مسماة يشبه جدول Excel لكن تتحكم فيه بالكود.
متى تستخدمها؟
- قراءة البيانات من مصادر مختلفة: CSV وExcel وSQL وJSON.
- تنظيف البيانات (Data Cleaning): حذف القيم الناقصة والمكررة وتصحيح الأنواع.
- التجميع والتلخيص، مثل حساب إجمالي المبيعات لكل مدينة.
مثال عملي
import pandas as pd
# في مشروع حقيقي ستقرأ ملفًا: df = pd.read_csv("data.csv")
df = pd.DataFrame({
"city": ["Cairo", "Riyadh", "Cairo", "Dubai"],
"sales": [120, 300, 80, 150],
})
print(df.head()) # أول الصفوف
print(df.describe()) # ملخص إحصائي
df["sales_with_tax"] = df["sales"] * 1.14 # عمود جديد
totals = df.groupby("city")["sales"].sum() # إجمالي لكل مدينة
print(totals.sort_values(ascending=False))إذا تعاملت مع ملفات ضخمة جدًا، فمكتبة Polars بديل حديث وسريع يستحق التجربة، لكن Pandas ما زالت الأكثر انتشارًا في الدورات وعروض العمل. ولو أردت التعمق في هذا المجال فدورة Data Analysis with Python تأخذك خطوة بخطوة في تحليل البيانات.

Matplotlib: لإنشاء الرسوم البيانية والمخططات
Matplotlib هي المكتبة الأساسية للرسم البياني في بايثون، وقابلة للتخصيص في كل تفصيلة تقريبًا. تحوّل الأرقام إلى صورة تفهمها في ثانية، وهذا جزء لا غنى عنه من أي تحليل.
متى تستخدمها؟
يمكنك بها رسم المخطط الخطي (Line Plot)، ومخطط التشتت (Scatter Plot)، والأعمدة (Bar Chart)، والمدرج التكراري (Histogram)، والخرائط الحرارية (Heatmap)، وغيرها. كما أن مكتبات أخرى مثل Seaborn مبنية عليها، وPandas نفسها تستخدمها في دالة plot().
مثال عملي
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
fig, ax = plt.subplots()
ax.plot(x, y, marker="o")
ax.set_xlabel("x")
ax.set_ylabel("y")
ax.set_title("A simple line plot")
plt.show() # أو fig.savefig("plot.png") لحفظ الرسم كصورةاستخدام fig, ax بدل الاستدعاء المباشر لـ plt.plot عادة جيدة، لأنها تسهّل عليك لاحقًا رسم أكثر من مخطط في صورة واحدة.

TensorFlow: لإنشاء وتدريب نماذج الذكاء الاصطناعي
TensorFlow مكتبة من Google لبناء وتدريب نماذج التعلم الآلي (Machine Learning) والتعلم العميق (Deep Learning). وحدة البيانات فيها اسمها Tensor، وهو مصفوفة متعددة الأبعاد (Multidimensional Array) تشبه مصفوفات NumPy لكنها تعمل أيضًا على معالجات الرسوميات (GPU). وتأتي معها واجهة Keras التي تجعل بناء الشبكات العصبية (Neural Networks) أبسط بكثير.
متى تستخدمها؟
- التصنيف (Classification)، مثل تمييز الصور أو تصنيف الرسائل.
- التنبؤ بالقيم (Regression)، مثل توقع الأسعار.
- نشر النماذج على الموبايل والمتصفح عبر أدوات منظومتها.
مثال عملي
نموذج صغير يتعلم بنفسه أن y = 2x:
import numpy as np
import tensorflow as tf
x = np.array([1, 2, 3, 4, 5], dtype=np.float32).reshape(-1, 1)
y = 2 * x
model = tf.keras.Sequential([
tf.keras.Input(shape=(1,)),
tf.keras.layers.Dense(1),
])
model.compile(optimizer=tf.keras.optimizers.Adam(0.1), loss="mse")
model.fit(x, y, epochs=200, verbose=0)
print(model.predict(np.array([[6.0]]), verbose=0)) # قيمة قريبة من 12من المهم أن تعرف أن PyTorch أصبحت المنافس الأقوى لـ TensorFlow، وهي الأكثر استخدامًا في الأبحاث وفي كثير من مشاريع الذكاء الاصطناعي الحديثة. المفاهيم الأساسية واحدة في المكتبتين، فما تتعلمه في إحداهما ينتقل معك إلى الأخرى. وللبداية من المفاهيم نفسها قبل الكود، اطلع على دورة مدخل إلى الذكاء الاصطناعي.
مقارنة سريعة بين المكتبات الخمس
| المكتبة | الاستخدام الأساسي | أمر التثبيت | بديل يستحق المعرفة |
|---|---|---|---|
| Requests | طلبات HTTP والتعامل مع APIs | pip install requests | httpx |
| NumPy | الحسابات العددية والمصفوفات | pip install numpy | — |
| Pandas | تنظيف البيانات وتحليلها | pip install pandas | Polars |
| Matplotlib | الرسوم البيانية | pip install matplotlib | Seaborn وPlotly |
| TensorFlow | التعلم الآلي والتعلم العميق | pip install tensorflow | PyTorch |
كيف تختار المكتبة المناسبة لمشروعك؟
- ابدأ من المشكلة: حدد ما تريد فعله أولًا، ثم ابحث عن المكتبة، لا العكس.
- التوافق: تأكد أن المكتبة تدعم إصدار بايثون ونظام التشغيل الذي تستخدمه.
- جودة التوثيق: المكتبة ذات التوثيق الواضح والأمثلة الكثيرة توفر عليك ساعات.
- النشاط والانتشار: راجع آخر تحديث للمكتبة على PyPI وGitHub، فالمكتبة المهجورة مخاطرة.
- سهولة التعلم: لو كان أمامك خياران متقاربان، اختر الأبسط لمستواك الحالي.
أدوات البرمجة بمساعدة الذكاء الاصطناعي تساعدك كثيرًا في شرح رسالة خطأ أو اقتراح طريقة استخدام دالة، لكنها قد تقترح أحيانًا دوال قديمة أو غير موجودة. لذلك اجعل التوثيق الرسمي للمكتبة مرجعك الأخير.

هل أنت مستعد لتعلم هذه المكتبات؟
كل هذه المكتبات تفترض أنك تفهم أساسيات بايثون جيدًا: المتغيرات، والقوائم، والدوال، والحلقات، والتعامل مع الأخطاء. إن لم تكن متأكدًا من ذلك، فابدأ بالأساسيات أولًا، وستجد المكتبات بعدها أسهل بكثير.
إن كنت تبحث عن بداية منظمة، فـ مسار تعلم أساسيات البرمجة بلغة بايثون للمبتدئين يأخذك من الصفر خطوة بخطوة، مع اختبارات ومشاريع تطبيقية، ثم دورات هياكل البيانات التي تبني طريقة تفكيرك في حل المشكلات كمبرمج، وكل ذلك باللغة العربية.
الخلاصة
- Requests لجلب البيانات من الإنترنت، وNumPy للحساب عليها بسرعة.
- Pandas لتنظيفها وتحليلها، وMatplotlib لعرضها في رسوم بيانية.
- TensorFlow لبناء نماذج تتعلم منها، مع معرفة أن PyTorch بديل قوي ومنتشر.
- ثبّت المكتبات داخل بيئة افتراضية لكل مشروع، واجعل التوثيق الرسمي مرجعك.
هذه خمس مكتبات فقط من عشرات الآلاف المتاحة على PyPI. أتقن الأساسيات، ثم اختر المكتبة التي تخدم مشروعك القادم وابدأ بمثال صغير.
أسئلة شائعة
ما الفرق بين المكتبة والوحدة (Module) في بايثون؟
الوحدة ملف بايثون واحد يحتوي على كود، أما المكتبة فمجموعة من الوحدات والحزم المنظمة لتخدم مجالًا معينًا، مثل Pandas لتحليل البيانات.
هل أحتاج إلى تعلم الرياضيات قبل NumPy وTensorFlow؟
لا تحتاجها لتبدأ مع NumPy. لكن كلما تعمقت في التعلم الآلي ستحتاج إلى أساسيات الجبر الخطي والإحصاء لتفهم ما تفعله النماذج.
بأي مكتبة أبدأ من هذه المكتبات الخمس؟
بعد أساسيات بايثون، ابدأ بـ Requests لأنها الأبسط، ثم NumPy وPandas وMatplotlib معًا لأنها تُستخدم غالبًا في نفس المشروع، واترك TensorFlow للنهاية.
لماذا يظهر لي خطأ ModuleNotFoundError رغم أنني ثبّت المكتبة؟
غالبًا ثبّتها في بيئة بايثون مختلفة عن التي تشغّل بها الكود. فعّل البيئة الافتراضية الصحيحة، واستخدم python -m pip install لتضمن أن التثبيت يتم لنفس نسخة بايثون.



