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

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


خطة الدورة :

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


متطلبات الدورة

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

رابط التحميل
http://www.python.org/ftp/python/2.5.1/python-2.5.1.msi

صورة المفسر



ثم يلزمنا بعد ذلك تحميل المفسر Py******erer الذي سنعمل به خلال الأقسام الأولى من الدورة

رابط التحميل


http://www.mediafire.com/?e5ioniytoxs

صورة المفسر




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


أول خطوة مع البايثون

أدات النسخ print

طريقة إستعمال المفسر سهلة جدا و هذا راجع لسهولة اللغة بحيث لا تفرض علينا تعريفات قبل الإستعمال . و لطباعة الكتابة على الشاشة نستعمل الأمر print ثم نتبعه بالرسالة التي نريد طباعتها و لتشغيل البرنامج (run) نقوم بالضغط على F9



ويظهر النتاتج الكود أسفل البرنامج



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









- المتغيرات

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





كما نلاحظ في المثال x تعتبر المتغير أو إسم المتغير و 10 أو 22 تعتبر قيمة المتغير و قلنا أن إسمه متغير لأننا نستطيع تغير قيمته متى نشاء
و لكي نستطيع حجز قيم ومعلومات في ذاكرة الجهاز لابد لنا من إسنادها إلى متغيرات لكي يستطيع الجهاز حجزها فالجهاز يتعامل مع المعلومات أو القيم حسب أسمائها فمثلا يحجز الجهاز القيمة 10 ويطلق علها إسم x فإذا استدعينا x بالأمر print يقوم الجهاز بالبحث عن x في الذاكرة ثم يقوم بتحميل قيمتها .

تترك الغة في إختيار الأسماء ل المتغيرات و بكل الأحرف (A>Z) و الأعداد(0<9) لكن يشترط أن يكون أول الإسم عبارة عن حرف لا عدد .
و لاتستطيع إستخدام الأحرف الخاصة لتسمية المتغيرات مثل # @ /$ و أيضا لا يمكنك تسمية المتغيرات بالاسماء المحجوزة من الطرف اللغة و المبينة في القائمة التالية


كود PHP:
and assert break class continue def
del elif
else
except exec finally
for from global if
import in
is lambda not
or pass
print
raise return try while
yield

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

إسناد قيم لـ المتغيرات

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



من اروع مميزات لغة البايثون أنها تقوم بتعريف المتغير تلقائيا ففي لغة السي مثلا يجب أن نعرف نوع المتغير قبل أن نسند له قيمة

لغة البايثون تكتشف نوع المتغير تلقائيا ليس هذا فقط بل إنها تقوم بتسير موارد الذاكرة تلقائيا و هذه الميزة الأخيرة لا يعرف قيمتها إلا من جرب البرمجة بلغة السي و السي ++ .
في الأمثلة الثلاثة الذكورة في الأعلى يقوم الحهاز بعمل أربعة أمور
-إنشاء المتغير ثم حفظه و حفظ المعلومات الخاصة به( الإسم القيمة).
-يحدد نوعه.
-يحوله إلى صيغته الخاص الصيغةأو المستعملة من طرف الجهاز المشابهة ل الصيغة التالية a3 b9 fx
-إنشاء رابط (مؤشر) بين الإسم و مكان الحفظ و هذه ميزة أخرى رائعة بحيث أن اللغة تقوم يتسير المؤشرات تلقائيا .

نستطيع إعطاء قيمة لأكثر من متغير في سطر واحد أو حتى إعطاء قيم مختلفة لمتغيرات متعددة كما يوضح المثال التالي




وهذا مثال يقوم بحساب المساحة



كما نستطيع التعامل مع المتغيرات بكل المعاملات الرياضية */ + ...

يوجد معامل مهم هو معامل باقي القسمة %




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


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


تم بحمد الله


],vm td gym hgfhde,k fvkhl[ Python hgfhde,k fvkhl[ ],vm