بناء جملة وبنية بايثون (Python Syntax and Semantics)

العناصر الأساسية لبناء جملة بايثون

تتكون برامج بايثون من مجموعة متنوعة من العناصر الأساسية. وتشمل هذه:

  • الكلمات الأساسية: الكلمات المحجوزة التي لها معنى خاص في بايثون (مثل `if`، `else`، `for`، `while`، `def`، `class`).
  • المعرفات: أسماء تُستخدم لتحديد المتغيرات والوظائف والفئات والكائنات الأخرى. يجب أن تبدأ المعرفات بحرف أو شرطة سفلية (_) ويمكن أن تحتوي على أحرف وأرقام وشرطات سفلية.
  • الحروف: قيم ثابتة تمثل البيانات، مثل الأرقام (10، 3.14)، السلاسل (“مرحبا يا عالم”)، والقيم المنطقية (صحيح، خطأ).
  • المشغلون: رموز تُستخدم لإجراء عمليات حسابية ومنطقية، مثل + (الجمع)، – (الطرح)، * (الضرب)، / (القسمة)، == (يساوي)، != (لا يساوي)، و (و)، أو (أو)، ليس (ليس).
  • علامات الترقيم: رموز تستخدم لتنظيم بناء الجملة، مثل الأقواس، الأقواس، الفواصل، والنقطتين.

بنية بناء جملة بايثون

تتميز بايثون ببنية بناء جملة واضحة وقابلة للقراءة. فيما يلي بعض الجوانب الرئيسية لبناء جملة بايثون:

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

أنواع البيانات في بايثون

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

  • الأعداد الصحيحة: أعداد صحيحة (أرقام بدون فواصل).
  • أرقام الفاصلة العائمة: أرقام ذات فواصل.
  • الأعداد المركبة: أرقام ذات جزء حقيقي وجزء تخيلي.
  • السلاسل: تسلسلات من الأحرف.
  • القيم المنطقية: صحيح أو خطأ.
  • القوائم: تسلسلات قابلة للتغيير من العناصر.
  • المجموعات: تسلسلات غير قابلة للتغيير من العناصر.
  • القاموس: مجموعات من أزواج المفتاح والقيمة.

المشغلون في بايثون

توفر بايثون مجموعة متنوعة من المشغلين لإجراء العمليات المختلفة:

  • المشغلون الحسابيون: + (الجمع)، – (الطرح)، * (الضرب)، / (القسمة)، % (باقي القسمة)، ** (الأس)، // (القسمة الصحيحة).
  • مشغلو المقارنة: == (يساوي)، != (لا يساوي)، > (أكبر من)، < (أقل من)، >= (أكبر من أو يساوي)، <= (أقل من أو يساوي).
  • المشغلون المنطقيون: و (و)، أو (أو)، ليس (ليس).
  • المشغلون بت: & (و بت)، | (أو بت)، ^ (أو بت الحصري)، ~ (عكس بت)، << (إزاحة لليسار)، >> (إزاحة لليمين).
  • مشغلو العضوية: في (في)، ليس في (ليس في).
  • مشغلو الهوية: هو (هو)، ليس هو (ليس هو).

بنية التحكم في التدفق

توفر بايثون بناء جملة للتحكم في التدفق للسماح لك بتحديد كيفية تنفيذ التعليمات البرمجية. تشمل هياكل التحكم في التدفق الشائعة:

  • عبارات if/else: تستخدم لتنفيذ كتل من التعليمات البرمجية بناءً على شرط معين.
  • حلقات for: تستخدم للتكرار عبر تسلسل من العناصر (مثل قائمة أو سلسلة).
  • حلقات while: تستخدم لتكرار كتلة من التعليمات البرمجية طالما أن شرطًا معينًا صحيح.
  • تعليمات break و continue: تُستخدم للتحكم في تدفق الحلقات.

الدوال في بايثون

الدوال هي كتل من التعليمات البرمجية التي تؤدي مهمة معينة. يمكنك تعريف الدوال باستخدام الكلمة الأساسية `def`. تأخذ الدوال عادةً مدخلات (معلمات) وتعيد قيمة (باستخدام العبارة `return`).

مثال:


def تحية(الاسم):
    print("مرحباً، " + الاسم + "!")

تحية("العالم")

الفئات والكائنات في بايثون

بايثون هي لغة موجهة للكائنات، مما يعني أنها تدعم مفهوم الفئات والكائنات. تصف الفئات القوالب لإنشاء كائنات، بينما الكائنات هي حالات من الفئات. تسمح الفئات لك بتجميع البيانات (السمات) والوظائف (الأساليب) معًا في وحدة واحدة.

مثال:


class قط:
    def __init__(self, الاسم, العمر):
        self.الاسم = الاسم
        self.العمر = العمر

    def صوت(self):
        print("مواء")

قطي_الاول = قط("مواء", 5)
print(قطي_الاول.الاسم)
قطي_الاول.صوت()

الاستثناءات في بايثون

يمكن أن تحدث الاستثناءات (الأخطاء) أثناء تنفيذ برنامج بايثون. يمكنك التعامل مع الاستثناءات باستخدام كتل `try-except`. هذا يسمح لك بالتقاط الأخطاء ومعالجتها بشكل رشيق.

مثال:


try:
    القسمة = 10 / 0
except ZeroDivisionError:
    print("لا يمكن القسمة على صفر!")

الوحدات في بايثون

الوحدات هي ملفات تحتوي على تعريفات ووظائف وفئات بايثون. يمكنك استخدام الوحدات لتنظيم التعليمات البرمجية وإعادة استخدامها. يمكنك استيراد الوحدات باستخدام العبارة `import`.

مثال:


import الرياضيات

النتيجة = الرياضيات.sqrt(16)
print(النتيجة)

إرشادات نمط التعليمات البرمجية في بايثون

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

أفضل الممارسات لبناء جملة بايثون

لتحسين جودة التعليمات البرمجية الخاصة بك، ضع في اعتبارك أفضل الممارسات التالية:

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

خاتمة

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

المراجع

“`