تعلم البرمجة لم يعد معقداً كما يظن الكثيرون، فلغة بايثون توفر مدخلاً سهلاً وبسيطاً لكل من يرغب في اكتساب مهارة جديدة تفتح له فرصاً واسعة في مجالات متعددة مثل تطوير التطبيقات وتحليل البيانات والذكاء الاصطناعي. ما يميز بايثون أنها لغة مرنة وسهلة القراءة والفهم حتى للمبتدئين، مما يجعلها الخيار المثالي لخطوتك الأولى نحو البرمجة. في هذا الدليل ستتعرف على الأساسيات التي تحتاجها للبدء بطريقة عملية ومنظمة دون تعقيد.
ستدرس فصل برمجة جديدًا هذا الخريف، ولا تعرف شيئًا عن البرمجة. تُدرّس بايثون على نطاق واسع في المدارس، وهي من أكثر لغات البرمجة رواجًا نظرًا لبساطتها. قضاء 20 دقيقة في تعلم بايثون لم يُضرّ أبدًا بالمبرمج الطموح، لذا استفيد من نفسك.
بايثون لغة برمجة نصية تهدف إلى البساطة. نص بايثون هو ببساطة قائمة من الكلمات الإنجليزية والأحرف الخاصة التي تصف سلسلة من الخطوات لحل مشكلة.
تثبيت Python
للبدء، عليك تثبيت مُفسّر بايثون (برنامج). وهو الذي يقوم بالعمل من خلال قراءة النص البرمجي وتنفيذ أوامره.
Windows وMac
لتثبيت بايثون على ويندوز وماك، توجه إلى صفحة تنزيلات بايثون وقم بتنزيل المُثبّت. بعد التثبيت، سيسألك البرنامج عما إذا كنت تريد تثبيت pip وIDLE؛ أجب بنعم لكليهما. لن تستخدم pip هنا، ولكنك ستحتاج إليه في النهاية.
تحذير
يجب على مستخدمي ويندوز تحديد خيار “إضافة python.exe إلى PATH”.
إذا كنت بحاجة إلى مزيد من المساعدة، فإليك دليل تثبيت مفيد لنظام ويندوز:
https://youtu.be/C3bOxcILGu4
للحصول على المساعدة على نظام Mac، يمكنك اتباع هذا البرنامج التعليمي:
https://youtu.be/utVZYVJSTZA
Linux
في Linux، من شبه المؤكد أن بايثون مُثبّت مسبقًا على توزيعتك.
إعداد بيئة Python
سنستخدم IDLE لمحرر الأكواد، لسهولة إعداده واستخدامه.
التثبيت
يتضمن مُثبّت بايثون لنظامي ويندوز وماك IDLE افتراضيًا، لذا إذا اخترته أثناء التثبيت، فلن تحتاج إلى أي إجراء إضافي. مع ذلك، في لينكس، ستحتاج إلى تشغيل أحد الأوامر التالية لتثبيته.
للتوزيعات المشتقة من ديبيان:
sudo apt-get install idle
بالنسبة لتوزيعات Fedora وغيرها من توزيعات Red Hat التي تستخدم dnf:
sudo dnf install idle
لتوزيعات أخرى، راجع دليل توزيعتك.
ابدأ وضع الخمول
ابدأ الآن وضع الخمول. إذا ظهرت لك الشاشة التالية:
تُسمى هذه الحلقة REPL (حلقة القراءة-التقييم-الطباعة)؛ ويُطلق عليها البعض اسم shell. في REPL، يُمكننا إدخال أوامر لمرة واحدة لاختبار الأشياء. لا يُحفظ أي شيء مُدخل هنا.
لإنشاء ملف شيفرة مصدرية جديد، انقر على “ملف” ثم اختر “ملف جديد” – انظر الصورة التالية:
ستظهر لك نافذة فارغة جديدة. هنا نكتب الكود.
كتابة وتشغيل أول برنامج بايثون: أهلاً بالعالم!
الآن وقد فتحنا ملفًا جديدًا، يمكننا البدء بكتابة بعض الكود. كل أمر تكتبه يُسمى جملة. أبسط جملة هي جملة الطباعة، والتي تتيح لنا طباعة رسالة على الشاشة.
اكتب الجملة التالية في الملف الجديد:
print("Hello, world!")
ثم انقر فوق “تشغيل” في شريط الأدوات، ثم انقر فوق “تشغيل الوحدة النمطية” (بدلاً من ذلك، اضغط على مفتاح F5):
يجب أن ترى النتائج تظهر في REPL:
تهانينا، هذا برنامجك الأول.
فهم المسافة البادئة وكتل الكود
تنظم بايثون (مثل معظم لغات البرمجة) كودها في كتل. تُحدد المسافة البادئة حدود هذه الكتل. على سبيل المثال:
foo = "This is called the top-level."
if True:
bar1 = "This is the second level."
bar2 = "This is on the same level as the previous statement."
if True:
baz = "This is the third level."
في الوقت الحالي، ركّز فقط على المسافة البادئة من الكود السابق. تخيّل مستويات المسافة البادئة مشابهة للتسلسل الهرمي في قائمة مهام: يمكنك تجميع المهام ذات الصلة تحت عنوان مشترك، بل وحتى دمج مجموعات إضافية، مما يوفر هيكلًا وتنظيمًا واضحين.
تستخدم بايثون المسافة البادئة لتجميع الكود معًا في كتل. على سبيل المثال، عندما ترى عبارة “if” – والتي تُستخدم للتحقق من شرط – تُشكّل الأسطر المسننة أسفلها مباشرةً ما يُعرف بكتلة الكود (في هذه الحالة، كتلة if). لا يُنفّذ الكود داخل كتلة if هذه إلا إذا تحقق الشرط. على سبيل المثال:
if 1 == 1:
print("This executes because 1 is equal to 1.")
print("This will also execute because the entire if-block executes.")
else:
print("This will never execute because 1 always equals 1, and this is the 'falsy' block."
جرّب هذا في بيئة IDLE وشغّله. جرّب بعض العبارات الشرطية. أزل بعض المسافات البادئة وشاهد النتيجة.
المتغيرات وأنواع البيانات
في أي لغة برمجة، تعمل المتغيرات كما تعمل في الرياضيات: فهي تخزن القيم.
foo = 1
print(foo)
شغّل هذا في وضع IDLE. غيّر قيمة “foo”.
لا تقتصر المتغيرات على تخزين الأرقام فحسب، بل يمكنها أيضًا تخزين سلاسل نصية:
foo_string = "A string is a sequence of characters."
الأرقام العائمة، وهي أرقام تحتوي على فاصلة عشرية:
foo_float = 3.14159
القيم المنطقية، والتي تكون صحيحة أو خاطئة:
foo_bool = True
هناك أنواع بيانات معقدة أخرى، مثل التوبلات والمجموعات والقوائم. لقد كتبتُ درسًا شاملًا حول قوائم بايثون، قد ترغب في قراءته لاحقًا.
تُعرف جميعها عادةً بأنواع البيانات. في الوقت الحالي، يكفيك تعلم الأعداد الصحيحة والأعداد العشرية والسلاسل النصية والقيم المنطقية.
قبول مُدخلات المستخدم
الآن وقد تعرفتَ على كيفية استخدام عبارة الطباعة، فإن الخطوة التالية هي قبول مُدخلات المستخدم.
name = input("What is your name? ")
print("Hello, " + name + "!")
سيتوقف البرنامج النصي مؤقتًا أثناء انتظار الإدخال.
المعاملات والتعابير الأساسية
ذكرتُ سابقًا أن القيم المنطقية (صواب أو خطأ) تتحكم في عبارات الشرط (if):
if True:
pass
قيمة ثابتة مثل “صحيح” تكاد تكون عديمة الفائدة هنا. ولجعلها مفيدة، نستخدم التعبيرات. التعبير هو أي جملة تُقيّم إلى قيمة، على سبيل المثال، قيمة منطقية:
if 1 == 1: # Evaluates to True.
print("One is equal to one.")
الجزء “1 == 1” من العبارة هو التعبير؛ أما الجزء “==” فيُسمى المُعامل – أي مُعامل المساواة. هناك بعض المُعاملات الشائعة:
<: The less than operator.
>: The greater than operator.
<=: The less than or equal to operator.
>=: The greater than or equal to operator.
!=: The not equal to operator.
يُشكّل استخدام هذه المُعاملات تعبيرًا منطقيًا. تُشكّل المُعاملات الأخرى تعبيرات عددية، وهي رموز مألوفة لديك: +، -، * (الضرب)، و/ (القسمة).
التركيب
لنبدأ بتركيب كل شيء: الطباعة، الإدخال، المتغيرات، عبارات الشرط، الكتل، التعبيرات، المُعاملات، الأرقام، والسلاسل النصية:
name = input("What is your name? ")
age = int(input("How old are you? "))
if age > 21:
print(name + ", you are older than 21.")
elif age < 21:
print(name + ", you are younger than 21.")
else:
print(name + ", you are 21!")
جرّب هذا في IDLE. غيّر الكود. حاول ابتكار أفكارك الخاصة.
لقد غطينا الكثير في دقائق معدودة، ويمكنك تحقيق تقدم كبير بما تعلمته. أنصحك بعدم التوقف عند هذا الحد، فصفحة البدء على موقع Python توفر مجموعة من الموارد الرائعة للمبتدئين.
سبق أن اقترحت استخدام IDLE كمحرر أكواد، لكن هذا ليس حلاً طويل الأمد. غالبًا ما يستخدم الناس VS Code لقوته وقابليته للتوسع ودعمه للعديد من لغات البرمجة. لدينا مقالات تشرح لماذا VS Code رائع ولماذا يجب على الجميع استخدامه.
البدء مع لغة بايثون لا يتطلب خبرة سابقة أو معرفة عميقة بالبرمجة، بل يكفي اتباع خطوات واضحة وممارسة عملية مستمرة. بتعلم الأساسيات ستفتح لنفسك أبواباً واسعة للتخصص في مجالات مختلفة وتطوير مهاراتك يوماً بعد يوم. اجعل هذا الدليل نقطة البداية وواصل رحلتك بثقة نحو بناء مشاريعك الخاصة.