تعلم لغة البايثون بكل سهولة من الصفر

تعلم لغة البايثون
تعلم لغة البايثون

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

الوحدة الأولى :تعلم لغة البايثون أساسيات Python

  • الفصل الأول : البداية في لغة البايثون
  • الفصل الثاني: الأنواع و العمليات في لغة البايثون
  • الفصل الثالث: التعابير الأساسية البايثون
  • الفصل الثالث: الوظائف في لغة البايثون
  • الفصل الرابع: الوحدات في لغة البايثون
  • الفصل الخامس: الصفوف في لغة البايثون
  • الفصل السادس:الستثناءات في لغة البايثون

الفصل الأول : البداية في لغة البايثون

لماذا لغة Python ؟

في عام 1990 م قام Guido van Rossum باختراع لغة بايثون، وقد استقى هذه اللغة : من عدة لغات سابقة من أمثال : Icon و ABC و Modula- و 3 C++ و C.

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

مميزات لغة البايتون

  1. لا تحتاج إلى بناء أو ربط مثل لغة السي
  2. لا تحتوي على أنواع المتغيرات
  3. إدارة آلية للذاكرة
  4. برمجة غرضية التوجه
  5. إمكانية التضمين و التمدد مع لغة السي
  6. البساطة و الوضوح في قواعد الكتابة و التصميم
  7. محمولية عالية
  8. مفتوحة المصدر

فوائد لغة البايتون

  1. تسريع دورة التطوير فيها بشكل ملحوظ
  2. البرامج تصبح أسهل و أبسط و أكثر مرونة
  3. مجمع النفايات يجنبك الجهد في تنقيح الكود
  4. يمنحك التكامل مع COM و Java و C++
  5. تحسين الأداء و إمكانية التحاور مع النظام
  6. درجة عالية من المقروئية و إمكانية الصيانة و سهولة التعليم
  7. تعمل على عدة منصات: الويندوز و اللينكس و الماكنتوش و اليونكس بدون تغيير الكود
  8. تعطيك الحرية في توزيعها و التعديل فيها و ضامن لبقائها

و أهم مميزاتها أنها سهلة التعلم ، وهذا ما ستلحظه أثناء تعلمك لها مع قوتها في آن واحد مما
جعلها الخيار الأمثل لكثير من الشركات، وسنذكر مجموعة منها:

  • Yahoo Maps –
  • Yahoo Groups –
  • Google –
  • Ultraseek –
  • Jasc Software, Paint Shop Pro –
  • National Weather Service –
  • NASA –
  • Red Hat –
  • SGI, Inc –
  • IBM –
  • Real Networks –

ما مجالات لغة بايثون ؟

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

– مجال الأدوات التي تتعامل مع النظام مباشرة
– مجال برمجة الإنترنت
– مجال برمجة واجهات المستخدم الرسومية
– مجال برمجة قواعد البيانات
– مجال البرمجة الموزعة

كيف تشغل برنامج مكتوب بلغة البايتون Python ؟

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

تعلم لغة البايثون

بطبيعة الحال لكتابة برنامج بايثون ستحتاج إلى محرر نصوص ثم حفظ الملف بلحقة py. بعد ذلك ادخل على سطر الأوامر و اكتب: python program.py <<

بحيث program اسم الملف،و للتعامل مباشرة مع محث لغة بايثون ، اكتب في سطرالأوامر : python<<

و لكتابة أول برنامج لك ، اكتب : ‘print ‘My name is deepotech<<<

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

إقرأ أيضا : أفضل 10 مواقع لتعلم لغة بايتون

بيئات التطوير الخاصة بالبايتون Python ؟

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

http://wiki.python.org/moin/PythonEditors

و لكن يكفيك أن تملك مفسر لغة بايثون مع محرر نصوص عادي لتكمل مشوارك معنا في تعلم لغة بايثون

الفصل الثاني: الأنواع و العمليات في لغة البايثون

النقاط المهمة:

  1. بنية برنامج بايثون
  2. لماذا نستخدم النواع المدمجة؟
  3. الاعداد
  4. السلاسل النصية
  5. القوائم
  6. القواميس
  7. المجموعات
  8. الملفات
  9. الخصائص العامة للكائنات
  10. تلميحات مهمة
  11. الملخص

بنية برنامج بايثون

قبل البدء في خوض غمار تفاصيل لغة بايثون، من المهم أن نعرج على بنية البرنامج المكتوب
بلغة بايثون، ليتكون لديك تصور واضح بشكل عام حول البرمجة بلغة بايثون، وباختصار نقول: برنامج بايثون يمكن أن يحلل إلى ثلثة أجزاء: وحدات، و عبارات، وكائنات، على نحو التالي:
١- البرنامج يتكون من وحدات
٢- و الوحدات تحتوي على عبارات
٣- و العبارات تنشأ الكائنات و تعالجها.

لماذا نستخدم الأنواع المدمجة؟

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

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

  • كائنات المدمجة تجعل البرامج البسيطة سهلة الكتابة
  • بايثون تزودك بالكائنات و تدعم التوسعات
  • الكائنات المدمجة أكثر كفاءة من بنى المعطيات المخصصة

الاعداد

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

أنواع العداد القياسية:

بايثون تدعم الأنواع القياسية في بقية اللغات و أتت بأنواع جديدة و في ما يلي جدول يبين تلك
الأنواع مع أمثلة لكل نوع:

تعلم لغة البايثون
–الأعداد الصحيحة و الأعداد ذات الفاصلة العائمة

الأعداد الصحيحة هي مجموعة من الأعداد العشرية مثل (10) ، و الأعداد ذات الفاصلة العائمة هي التي تحتوي على فاصلة مثل (٫10 10).

–الدقة الرقمية

الأعداد الصحيحة تعامل معاملة longs في لغة السي مما يعني أنها غير محدود بدقة رقمية،و الأعداد ذات الفاصلة العائمة تعامل معاملة doubles في لغة السي مما يعني أنك يمكنك أن تكتب أي رقم يخطر على بالك، مع ملاحظة أنك إذا ألحقت حرف l أو L فإنك تخبر مفسرلغة بايثون أن هذا العدد عدد صحيح طويل على مقايس لغة باثيون.

–الأعداد الثمانية و الستعشرية

الأعداد الثمانية هي التي تبدأ بالصفر 0 و الأعداد الستعشرية هي التي تبدأ بم 0X أو 0x.

-الأعداد المركبة

لغة بايثون تزودك بهذا النوع و هو يكتب كالتالي (الجزء الحقيقي + الجزء التخيلي)

السلاسل النصية

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

القوائم

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

  • مجموعة مرتبة من كائنات غير متجانسة
  • الوصول باستخدام المفهرس
  • مرونة عالية
  • مصفوفة من الكائنات المرجعية

القواميس

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

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

  • الوصول باستخدام المفتاح وليس الموقع
  • مجموعة غير منظمة من كائنات غير متجانسة
  • خصائص مرنة
  • جداول من كائنات المرجعية

المجموعات

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

  • مجموعة منظمة من الكائنات
  • الوصول باستخدام الموقع
  • سلسلة ثابتة من الكائنات
  • مصفوفة من الكائنات المرجعية

الملفات

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

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

الخصائص العامة للكائنات

الآن وبعد أن أنهينا جميع الكائنات المدمجة في بايثون، دعنا نأخذ جولة سريعة عن الخصائص
العامة للكائنات المدمجة في باثيون التي تتشارك فيها.

الجدول التالي يصنف جميع الأنواع التي رأيناها سابقا:

تعلم لغة البايثون

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

تلميحات مهمة

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

الملخص

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

  • Leave a Comment