كيف تتعلم لغة بايثون؟
نشره زايد يوم 18 يوليو, 2008 - 14:38.
2. اختار الطريقة الملائمة لك لتتعامل مع لغة بايثون (هناك خياران). النمط التفاعلي (يستخدم بصورة أساسية برنامج دوس بالنسبة لمستخدمي نظام ويندوز) أو IDE (بيئة تطويرية متكاملة) عبارة عن نسخة محسنة من النمط التفاعلي السابق ذكره.
3. عند فتح البرنامج (النمط الذي اخترته)، من المهم بمكان أن تتعرف على طبيعة مكونات البرنامج الذي أمامك. في الأغلب سترى التالي في أعلى نافذة البرنامج (في كل من النمطين).
4.Python 2.4 (#1, , June 28 2007, 09:18:58)
5. [GCC 3.4.1] on sunos5
7. الرمز <<< عبارة عن محث للدلالة على أن ما يأتي بعده عبارة عن بداية الرمز أو الكود.
8. قم بطباعة الكود التالي print "Hello, world!" على المحث. عند الضغط على زر انتر ستقوم اللغة بطباعة التالي كنتيجة:
9. Hello, world!
10. >>>
12. 'This is a string' ---> هذه هي الهيئة الافتراضية لكتابة السلاسل النصية.
13. "This is a string" ---> هذا المثال (كما في المثال السابق) عبارة عن هروب الاقتباسات.
14. This is a string
15. تتعامل لغة بايثون مع كل هذه الأمثلة (الكود) بنفس الطريقة عند طباعة الناتج.
16. 'This is a string'
17. وهنا يتم طرح السؤال التالي ، ما سبب تعدد الطرق في صياغة السلاسل النصية ضمن لغة بايثون؟؟ الجواب هو: هل ترغب أنت كمستخدم في كتابة سلسلة
18. "Coding in Python isn't boring" ---> لاحظ الفاصلة ' في كتابة الصيغة المختصرة isn't.
19. Scott likes to say, "This is a string" ---> لاحظ وجود علامة التنصيص حول عبارة ما يحب أن يقوله الاسكوتلنديون.
20. هناك أيضا طريقة أخرى في التخلص من أي مشكلة تتعلق بوجود فواصل ضمن السلاسل النصية. فقط ضع خط مائل عكسي (\) قبل علامة الفاصلة ':
21. "\"Hello, world!\" Scott said" ---> لاحظ مواقع الخطوط المائلة ضمن السلسة النصية (لاحظ بأنك قد استخدمت رمز هروب (تخلص) آخر). ويوضع هذا الرمز قبل أي فاصلة ضمن السلسة النصية.
22. إذا قمت بطباعة ذلك على المحث (>>>) ستلاحظ النتيجة.
23. '"Hello, world!"' ---> لاحظ عدم وجود أي خط مائل ضمن السلسة النصية.
24. لضم سلسلتين نصيتين منفصلتين لإنشاء سلسة نصية واحدة تحتاج إلى ما يسمى بــ con·cat·e·nate (دمج سلسلتين نصيتين مع بعضهم البعض).
25. >>> 'This is' + 'a string'
26. 'This is a string'
27. كما بالإمكان إسناد السلاسل النصية لمتغيرات (وغيره الكثير من مميزات السلاسل النصية).
28. >>>x = 'This is'
29. >>>y = 'another test'
30. >>>x + y
31. 'This is another test'
32. لاحظ انك في حالة طباعة x = y عن طريق الخطأ ، ستقوم لغة بايثون بإسناد 'another test' للمتغير x. خذ بعين الاعتبار انك لا تستطيع دمج عدد صحيح (integer) مع سلسة نصية (string) حيث لم يمكن ذلك في اللغات اللغوية أيضا.
لم يقصد عند كتابة هذا المقال أن يناقش جميع مفاهيم لغة بايثون حيث يحتاج ذلك لسنوات من الخبرة والممارسة. ولكن يمكنك اعتباره كمقدمة بسيطة لهذه اللغة ، حيث ستكون طريقة العرض كالدروس التي تأخذها في التعليم الثانوي لدراسة اللغات الأجنبية كالإنجليزية أو الفرنسية. بداية ، كما هو الحال مع أي لغة (برمجية أو لغوية) ، تعلم لغة بايثون يحتاج لبعض الوقت. وكمية الوقت اللازم يعتمد على الوقت والجهد المبذول لدراستها حيث تعتبر هذه اللغة إحدى اللغات المفضلة للمبتدأين في هذا المجال لتميزها بالوضوح والبساطة.
الخطوات
1. قم بتحميل النسخة الأخيرة من لغة بايثون من الموقع التالي http://python.org/download/. وتعتبر نسخة بايثون2.5.1 نسخة مستقرة ويمكن الاعتماد عليها. كما تأكد من اختيار النسخة المتطابقة مع نظام تشغيلك ، ثم اتبع إرشادات التحميل.
2. اختار الطريقة الملائمة لك لتتعامل مع لغة بايثون (هناك خياران). النمط التفاعلي (يستخدم بصورة أساسية برنامج دوس بالنسبة لمستخدمي نظام ويندوز) أو IDE (بيئة تطويرية متكاملة) عبارة عن نسخة محسنة من النمط التفاعلي السابق ذكره.
3. عند فتح البرنامج (النمط الذي اخترته)، من المهم بمكان أن تتعرف على طبيعة مكونات البرنامج الذي أمامك. في الأغلب سترى التالي في أعلى نافذة البرنامج (في كل من النمطين).
4.Python 2.4 (#1, , June 28 2007, 09:18:58)
5. [GCC 3.4.1] on sunos5
6. قم بكتابة التالي على المحث "help" ، "credits" ، "copyright" أو "license" لمزيد من المعلومات.
7. الرمز <<< عبارة عن محث للدلالة على أن ما يأتي بعده عبارة عن بداية الرمز أو الكود.
8. قم بطباعة الكود التالي print "Hello, world!" على المحث. عند الضغط على زر انتر ستقوم اللغة بطباعة التالي كنتيجة:
9. Hello, world!
10. >>>
11. من خلال المثال السابق فقد قمت بالنقاط التالية: أولا كتبت برنامجك الأول بلغة بايثون. ببساطة أليس كذلك!! وثانيا لقد قمت بتعلم كيفية كتابة السلاسل النصية (string). وتقوم السلاسل النصية بتخزين اختبار أو بيانات ثنائية ، وهي بيانات ثابتة (لا يمكن تغييرها بعد تعيينها. ولا بد أن تحاط كل سلسة نصية بعلامتي تنصيص("").
12. 'This is a string' ---> هذه هي الهيئة الافتراضية لكتابة السلاسل النصية.
13. "This is a string" ---> هذا المثال (كما في المثال السابق) عبارة عن هروب الاقتباسات.
14. This is a string
15. تتعامل لغة بايثون مع كل هذه الأمثلة (الكود) بنفس الطريقة عند طباعة الناتج.
16. 'This is a string'
17. وهنا يتم طرح السؤال التالي ، ما سبب تعدد الطرق في صياغة السلاسل النصية ضمن لغة بايثون؟؟ الجواب هو: هل ترغب أنت كمستخدم في كتابة سلسلة
نصية تحتوي على فاصلة أو علامة تنصيص ، سأخبرك كيف ستقوم بذلك؟؟ بسيطة!!
18. "Coding in Python isn't boring" ---> لاحظ الفاصلة ' في كتابة الصيغة المختصرة isn't.
19. Scott likes to say, "This is a string" ---> لاحظ وجود علامة التنصيص حول عبارة ما يحب أن يقوله الاسكوتلنديون.
20. هناك أيضا طريقة أخرى في التخلص من أي مشكلة تتعلق بوجود فواصل ضمن السلاسل النصية. فقط ضع خط مائل عكسي (\) قبل علامة الفاصلة ':
21. "\"Hello, world!\" Scott said" ---> لاحظ مواقع الخطوط المائلة ضمن السلسة النصية (لاحظ بأنك قد استخدمت رمز هروب (تخلص) آخر). ويوضع هذا الرمز قبل أي فاصلة ضمن السلسة النصية.
22. إذا قمت بطباعة ذلك على المحث (>>>) ستلاحظ النتيجة.
23. '"Hello, world!"' ---> لاحظ عدم وجود أي خط مائل ضمن السلسة النصية.
24. لضم سلسلتين نصيتين منفصلتين لإنشاء سلسة نصية واحدة تحتاج إلى ما يسمى بــ con·cat·e·nate (دمج سلسلتين نصيتين مع بعضهم البعض).
25. >>> 'This is' + 'a string'
26. 'This is a string'
27. كما بالإمكان إسناد السلاسل النصية لمتغيرات (وغيره الكثير من مميزات السلاسل النصية).
28. >>>x = 'This is'
29. >>>y = 'another test'
30. >>>x + y
31. 'This is another test'
32. لاحظ انك في حالة طباعة x = y عن طريق الخطأ ، ستقوم لغة بايثون بإسناد 'another test' للمتغير x. خذ بعين الاعتبار انك لا تستطيع دمج عدد صحيح (integer) مع سلسة نصية (string) حيث لم يمكن ذلك في اللغات اللغوية أيضا.
أفكارمفيدة
* إذا أخطأت في نقطة ما حاول مرة أخرى.
* يمكنك تحميل إضافات للبيئة التي تستخدمها مثل Pygame.
تنبيهات
* لا تستخدم لغة بايثون لإنشاء فيروسات. ولكن يمكنك من استخدام الرمز الكودي لفايروس معين لإنشاء مكافح له.
ترجمة : زاهر النوتكي
المصدر : How to Learn The Python Language
التصنيفات:
- قرأت 653 مرة
- اخبر صديق
- نسخة للطباعة









تعقيب
في النقطة الثامنة الأمر الصحيح هو: print "Hello,World!" ، وليس Hello,World! لوحدها..
لا هنت على التقديم.
شكرا على التنبيه
شكرا على التنبيه أخي Napst3r و تم التعديل
لا يوجد مشكلة
لا يوجد مشكلة في عدم كتابة print لأن بايثون التفاعلية تعمل evaluation وتطبع القيمة الممثلة repr
النابستر معه حق
Napst3r معه حق...لاحظ النتيجة:
IDLE 1.2
>>> hello,world!
SyntaxError: invalid syntax
>>>
شكرا و أرجو أن تواصلوا لمعرفة المزيد عن هذه اللغة
أخي "المايسترو"، ظهر هذا الخطأ لأنك...
أخي "المايسترو"، ظهر هذا الخطأ لأنك لم تضع علامتي '' أو ""
مقالة مشجعة
مقالة مشجعة للبداية ومحمسة ...
للمزيد حول بايثون راجع هذه الوصلة
http://itwadi.com/byteofpython_arabi
تحوي على كتاب بالعربي يشرح اساسيات بايثون
شكراً لك اخي
شكراً لك اخي الكريم على هذه المقالة المشجعة
وقررت من الان تعلم ال python فانا لا اتقن سوى Php , html ,c
بالفعل لغة تستحق الاهتمام
تسلم اخى زايد على المقال
صراحة لغة بايثون بالفعل تستحق الاهتمام
فهى تتميز بالسهولة والبساطة مقارنة بمثلها من اللغات التى ترتكز على الكود
وتتميز بايثون ليس فقط بسهولة تعلمها وانما ايضا بالقوة التى تجعلها مناسبة
لعمل تطبيقات احترافية كما انها تجبر المبرمج على كتابة كود يتميز بسهولة
القراءة
ولعل بايثون تعانى من مشكلتين فقط
الاولى هى توفر بيئة تطوير راقية بدرجة لاتقل عن اللغات الاخرى
وانى لعلى يقين ان تلك المشكلة ليست الا مشكلة وقت وانه فى السنوات القادمة
ستصل بيئات التطوير الخاصة ببايثون الى مستوى عالى جدا لايقل عن اللغات الاخرى
مثل جافا وسى شارب.
والثانية هى المعيارية حيث هناك خيارات عديدة عن اختيار اداوت البيئة الرسومية GUI
وادوات برمجة الشبكات Network Programming
وهذه المسالة يتم حلها من خلال الاستفادة من خبرات الاخرين الذى استخدموا مختلف الادوات
المتوفرة ثم قدموا مقارنات عادلة توضح المميزات والعيوب لكل اداة حتى يستطيع كل شخص
اختيار مايناسبه
فمثلا فيما يختص بالبيئة الرسومية GUI هناك العديد من الادوات
ويتنافس على القمة PyQt و wxPython
وبما انى اتحمس ل Qt مع ++C على حساب wxWidgets بالنسبة لـ ++C
فلقد بدات بدراسة PyQt اولا ثم wxPython
حيث قضيت الاسبوع الماضى العديد من المعارك مع كل من PyQt و wxPython حتى احدد
ايهما افضل
وقد انتهيت بان wxPython هى الخيار الامثل فى عالم بايثون حيث
هناك العديد من الامثلة والمنهجية الراقية كما ان المستوى الاحترافى كافى لمعظم
التطبيقات بينما PyQt تم انتاجها من خلال الاداة SIP التى تحول C++ Classes الى
Python Classes والنتيجة النهائية ليست مرضية كما هو الحال مع wxPython
فضلا عن الحرية التى تتميز بها wxWidgets
وقد اطمن قلبى لهذا القرار عندما علمت ان Guido van rossum مصمم لغة بايثون
قد اشار الى ان wxPython هى افضل GUI للغة Python ولو انها اتت منذ زمن بعيد
لكانت هى الاداة الرسومية الاساسية للغة بايثون بدلا من Tkinter
المصدر : http://www.wxpython.org/quotes.php
والله الموفق
أخي "المايسترو"، ظهر هذا الخطأ لأنك...
أخي "المايسترو"، ظهر هذا الخطأ لأنك لم تضع علامتي '' أو ""
علِّق