مصطلحات بايثون التي يجب أن يعرفها المبتدئون – الجزء الثاني

هل ما زلت تتعلم مصطلحات بايثون؟ لا داعي للقلق، فنحن هنا لمساعدتك في إتقان أساسيات لغة بايثون للمبتدئين. إذا فاتك الجزء الأول من مصطلحات بايثون التي يجب على المبتدئين معرفتها، فيمكنك قراءتها هنا.

لماذا يجب أن تقضي وقتك في تعلم مصطلحات بايثون؟ حسنًا، لقد شهدت لغة البرمجة ذات الأغراض العامة هذه شعبية هائلة في السنوات الأخيرة. هناك عدة أسباب تجعل الأشخاص من مختلف المهن يختارون لغة بايثون.

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

ثانيا، تتميز لغة بايثون بالمرونة؛ لا يقتصر الأمر على علم البيانات. يمكنك إنشاء منتجات برمجية في العديد من المجالات المختلفة، مثل تطوير الويب وتطوير الألعاب. و فيما يلي قائمة بـ أفضل 10 أفكار لاستخدام بايثون.

10 مصطلحات أخرى في لغة بايثون يجب أن تعرفها

سأشرح في هذه المقالة 10 مصطلحات في لغة بايثون يجب على المبتدئين معرفتها. هذه المصطلحات بسيطة ولكنها أساسية لتعلم بايثون. بمجرد حصولك على فهم شامل للأساسيات، يمكنك تحسين مهاراتك وتعلم مواضيع متقدمة بسهولة أكبر.

ترتبط المصطلحات الخمسة الأولى بمفهوم البرمجة الشيئية. وبما أن بايثون هي لغة موجهة للكائنات، فإن هذه المصطلحات ستضع الأساس. إنها ليست معقدة، لكنها مهمة جدًا.

مصطلحات Python الخمسة الأولى في قائمتي هي object وclass وattribute وinstance وmethod. بالنسبة لمعظم المصطلحات، سأقوم بإنشاء مثال بسيط في بايثون حتى تتمكن من رؤيته بنفسك.

من الأفضل شرح المصطلحات الخمسة الأولى باستخدام القياس. لنفترض أن لديك object تسمى Car. يمكنك إنشاء سيارات مختلفة باستخدام فئة السيارة هذه. كل ما عليك فعله هو تحديد العلامة التجارية ولون السيارة التي تريد تصنيعها. يمكنك أيضًا قيادة سيارتك لعدد الأميال التي تريدها.

Object

لقد اخترت Object باعتباره المصطلح الأول في بايثون لأن كل شيء في بايثون هو كائن. برامج بايثون مبنية على الكائنات. الأعداد الصحيحة والسلاسل والوظائف والقوائم والصفوف كلها أمثلة على الكائنات.

كل كائن له نوع. تعتمد كيفية استخدام كائن ما أو التفاعل معه على نوعه. يتم تعريف أنواع الكائنات مع الفئات.

في حالة Car class، كل سيارة تقوم بإنشائها أو إنتاجها هي كائن من نوع السيارة.

Class

Class هو مصطلح أساسي آخر في بايثون. يمكن اعتبار الفئات بمثابة مخطط للكائنات. عندما نتحدث عن Car class، فإننا نعني المخطط لجميع كائنات السيارة.

خذ القوائم كمثال آخر. عندما تقوم بإنشاء قائمة، فإنك في الواقع تقوم بإنشاء كائن بنوع القائمة. إذا قمنا بإنشاء كائن mylist الموضح أدناه ثم استخدمنا دالة type() لتخبرنا عن نوعه، لاحظ ما ترجعه الدالة:

>>> mylist = [1, 2, 3, 4]
>>> type(mylist)
<class 'list'>

إحدى مزايا استخدام الفئات هي أنك لا تحتاج إلى معرفة كيفية تنفيذها. كل ما عليك فعله هو أن تكون قادرًا على استخدام class بشكل مناسب في التعليمات البرمجية. هناك العديد من فئات Python المضمنة، ولكن يمكنك أيضًا إنشاء فئاتك الخاصة.

Attribute

السمات تحدد فئة. هناك نوعان رئيسيان من السمات:

  • تحدد سمات البيانات ما هو مطلوب لإنشاء كائن ينتمي إلى فئة معينة.
  • التوابع أو السمات الإجرائية تشرح أو تصف كيفية التفاعل مع كائنات الفئة.

لنفترض أنك قمت بإنشاء سيارة BMW زرقاء. اللون والعلامة التجارية هي سمات البيانات. ثم تقود سيارتك لمسافة 100 ميل. الإجراء الدافع هو سمة إجرائية (أي تابع).

Instance

صنف الفئة هو كائن ينتمي إلى الفئة. يتم تحديد نوع الصنف حسب الفئة التي ينتمي إليها. على سبيل المثال، عند إنشاء قائمة، فإنك في الواقع تقوم بإنشاء صنف لفئة القائمة المضمنة في لغة Python.

وبالعودة إلى تشبيهنا، فإن السيارات التي تقوم بإنشائها هي أصناف لفئة السيارة.

Method

تُعرف التوابع أيضًا بالسمات الإجرائية. يمكنك استخدام التوابع للتفاعل مع أصناف class.

قيادة السيارة التي تنتمي إلى فئة السيارة هي تابع (أي إجراء).

التوابع مشابهة تمامًا للدوال، ولكنها تنتمي إلى فئة معينة. على سبيل المثال، عندما تريد إضافة عنصر إلى القائمة، يمكنك استخدام التابع append(). أدناه، سنستخدم هذه التابع لإضافة رقم إلى نهاية قائمة mylist:

>>> mylist = [1, 2, 3, 4]
>>> mylist.append(5)
>>> print(mylist)
[1, 2, 3, 4, 5]

وبالتالي، فإن append() هو سمة إجرائية لفئة list().

الخطوة التالية هي رؤية class أثناء العمل. لنقم بإنشاء class بسيط يسمى “Person” حتى نتمكن من ممارسة ما تعلمناه حتى الآن:

class Person():
 
   def __init__(self, age, name):
     self.age = age
     self.name = name
   
   def age_diff(self, other):
     diff = self.age - other.age
     return abs(diff)

في فئة Person، هناك age و name و هما سمات البيانات. تحتاج إلى تحديد قيم هذه السمات لإنشاء صنف لهذه الفئة.

تحتوي فئة Person على تابعين، __init__ وage_diff. التابع الأول يتم تشغيله تلقائيًا عند إنشاء صنف؛ ويطلق عليه اسم التابع المُنشئ لأنه يتم تنفيذه في كل مرة يتم فيها إنشاء كائن.

يمكن استخدام التابع age_diff لحساب الفرق بين أعمار كائنين من الأشخاص. لنقم بإنشاء كائنين Person وحساب فارق السن.

>>> P1 = Person(24, "Ahme")
>>> P2 = Person(28, "amine")
>>> P1.age_diff(P2)
4

في الكود أعلاه، P1 وP2 عبارة عن كائنات من النوع Person. وتسمى أيضًا أصناف فئة Person. أما age_diff هو تابع لفئة Person. كما ترون في المثال أعلاه، يمكننا استخدامه لحساب الفرق بين عمر كائنين من الأشخاص.

Sets

المجموعة هي إحدى هياكل البيانات المضمنة في بايثون. تنظم هياكل البيانات البيانات بطريقة معينة وهي أساسية لأي لغة برمجة.

في بايثون، المجموعة عبارة عن مجموعة غير مرتبة من كائنات غير قابلة للتغيير. يبدو معقدا؟ دعونا نكسرها.

يجب أن تحتوي المجموعة على صفر أو أكثر من العناصر التي لا تمتلك أي ترتيب؛ وبالتالي، لا يمكننا التحدث عن العنصر الأول أو الأخير في المجموعة.

تحتوي المجموعات على كائنات مميزة غير قابلة للتغيير. بمعنى آخر، لا يمكن أن يكون لديك عناصر مكررة في المجموعة. يجب أن تكون العناصر غير قابلة للتغيير ويمكن أن تكون أنواع بيانات مثل الأعداد الصحيحة أو السلاسل أو الصفوف. على الرغم من أنه لا يمكن تغيير العناصر، إلا أن المجموعة نفسها قابلة للتغيير – يمكننا إضافة عناصر جديدة أو إزالة العناصر الموجودة في المجموعة.

لنقم بإنشاء مجموعة بسيطة عن طريق كتابة العناصر بين قوسين متعرجين، كما هو موضح أدناه:

>>> myset = {1, 5, "amin"}
>>> type(myset)
<class 'set'>

إذا حاولت إضافة عناصر مكررة في مجموعة، فستتم إزالتها تلقائيًا:

>>> myset = {1, 5, "amin", "amin", 5, 2}
>>> print(myset)
{1, 2, 'amin', 5}

إذا حاولت إنشاء مجموعة فارغة عن طريق كتابة {}، فسوف تقوم بإنشاء قاموس بدلاً من ذلك. في هذه الحالة، اكتب set().

Tuple

Tuple هو أحد هياكل البيانات المضمنة في Python. إنها مجموعة من الكائنات، ولكن على عكس المجموعات أو القوائم، لا يمكن تغيير الصفوف. بمجرد إنشائه، لا يمكننا تحديث أو تعديل الصف. يمكن أن تحتوي الصفوف على عناصر مكررة.

يمكنك إنشاء صف من خلال إدراج العناصر داخل الأقواس:

>>> mytuple = (1, 4, 5, "foo")
>>> type(mytuple)
<class 'tuple'>

إحدى حالات الاستخدام الشائعة للصفوف هي الدوال التي تُرجع كائنات متعددة. يمكنك تعيين العناصر التي تم إرجاعها إلى صف. بعد ذلك، يمكن الوصول إلى كل عنصر عبر الفهرسة أو التقطيع (استخراج جزء من صف، أو قائمة، أو سلسلة، وما إلى ذلك). فيما يلي مثال على فهرسة الصف:

>>> mytuple = (102, 14, 15)
>>> print(mytuple[0])
102
>>> print(mytuple[2])
15

String

قد تكون السلاسل والأعداد الصحيحة أكثر أنواع البيانات شيوعًا في بايثون. السلاسل النصية هي في الأساس أجزاء من النص، على الرغم من أنها تستطيع تخزين جميع أنواع الأحرف. بعض الأمثلة على السلاسل هي:

a = "amin"
b = "1dd23"
c = "?--daa"

توفر بايثون العديد من الدوال والتوابع للتعامل مع السلاسل والعمل معها. على سبيل المثال، يمكننا الوصول إلى أي جزء من السلسلة عن طريق تقطيع:

>>> mystring = "amin rabah"
>>> print(mystring[:4])
amin

في التقطيع، يعني :4 “البدء من الحرف الأول (الفهرس 0) وإرجاع كل شيء حتى تصل إلى الحرف الموجود في الفهرس 4”. الحد الأعلى حصري – فهو لا يتضمن هذا الحرف – لذا تحتوي سلسلة الإرجاع على الأحرف الأربعة في مواضع الفهرس 0 و1 و2 و3.

وهنا الفهرسة :

>>> print(mystring[-1])
h

-1 يعني الحرف الأخير في السلسلة.

عملية أخرى شائعة مع السلاسل هي التقسيم. يمكنك تقسيم سلسلة عند أي حرف معين.

>>> mystring.split(" ")
['amin', 'rabah']

يؤدي تقسيم سلسلة إلى إرجاع قائمة تحتوي على الأقسام قبل وبعد التقسيم. في هذا المثال، قمنا بتقسيم السلسلة في المسافة (" ").

Package

الحزمة عبارة عن دليل يحتوي على نصوص بايثون النصية. تقدم بايثون مجموعة غنية جدًا من الحزم؛ يمكن لأي مطور إنشاء حزمة وإصدارها ضمن Python Package Index (PyPI).

يتم إنشاء الحزم لأتمتة أو تسريع مهام معينة. على سبيل المثال، توفر حزمة الباندا العديد من الدوال لتحليل البيانات ومعالجتها بكفاءة. تلعب حزم الجهات الخارجية دورًا حاسمًا في جعل Python لغة البرمجة الأولى في النظام البيئي لعلوم البيانات.

دعونا نعرض حالة استخدام بسيطة باستخدام حزم Pandas وNumPy. سنستخدمها لإنشاء إطار بيانات (يشبه جدول قاعدة البيانات). لا تقلق بشأن فهم الكود؛ انظر فقط إلى عدد الأسطر القليلة من التعليمات البرمجية التي نحتاجها للقيام بهذه المهمة:

import numpy as np
import pandas as pd
 
df = pd.DataFrame(np.random.randint(10, size=(4,3)), columns=list("ABC"))
df
إنشاء إطار بيانات

باستخدام Pandas وNumPy، أنشأنا إطار بيانات يحتوي على أعداد صحيحة عشوائية بين 0 و10 مع بضعة أسطر فقط من التعليمات البرمجية!

Module

تحتوي حزمة بايثون على العديد من البرامج النصية (مثل البرامج الصغيرة التي تؤدي مهمة أو مهام معينة). يُعرف كل برنامج نصي في الحزمة باسم الوحدة. بعض الحزم كبيرة جدًا وتحتوي على العديد من الوحدات. في كثير من الأحيان، سوف تحتاج فقط إلى وحدة معينة من تلك الحزمة.

تتيح لنا لغة Python استيراد الوحدات واستخدامها، كما أوضحنا في مثال NumPy وpandas أعلاه.

لماذا يتعلم الكثير من الناس بايثون؟

أحسنت! إذا كنت قد قرأت مقالتنا السابقة عن مصطلحات بايثون، فأنت تعرف الآن 20 مفهومًا أساسيًا لتعلم بايثون. تذكر أنه تم إنشاء لغة Python لتسهيل عملية البرمجة للمبرمجين المبتدئين وغير المبرمجين. هذا هو السبب الأساسي لقبوله على نطاق واسع في النظام البيئي لعلم البيانات.


اكتشاف المزيد من بايثون العربي

اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

Scroll to Top

اكتشاف المزيد من بايثون العربي

اشترك الآن للاستمرار في القراءة والحصول على حق الوصول إلى الأرشيف الكامل.

Continue reading