معهد دعم اتش فى اى بى اس لحلول الويب - Powered by vBulletin


 
 
صفحة 1 من 2 12 الأخيرةالأخيرة
النتائج 1 إلى 10 من 20

الموضوع: مدْخل إلى Python دورة حسابية و منطقية مع Python

  1. #1
    عضو جديد


    تاريخ التسجيل: Jun 2011
    رقم العضوية: 7
    المشاركات: 2,181
    HVIPS5 غير متواجد حالياً

    مدْخل إلى Python دورة حسابية و منطقية مع Python


    مدْخل إلى Python دورة حسابية و منطقية مع Python
    مدْخل إلى Python دورة حسابية و منطقية مع Python
    مدْخل إلى Python دورة حسابية و منطقية مع Python


    نقره لتكبير أو تصغير الصورة ونقرتين لعرض الصورة في صفحة مستقلة بحجمها الطبيعي

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

    قائمة المحتويات(متجددة)

    كود HTML:
     تثبيت الأدوات اللازمة
    طريقة الشرح
    نافذة Python Shell
    مرحباً Python
    أمر الطباعة print
    التلميحات comments
    موجزاً لأهم ما سبق
    ,..,,.,.,.,..,,.,.,.,.,.,.
    لمحة سريعة حول انواع البيانات
    دالة المساعدة help.
    المتغيرات Variables
    الأخطاء و آلية اشتكشافهن
    إعادة و تصفير جلسة العمل  العمليات الحسابية الأساسية
    الإدخال بواسطة input.
    تضمين و جلْب الملفات بواسطة الامر import.
    المنطق
    مفهوم الإزاحة النصية Indentation
    جُملة الشرط if و مكوناتها
    جُمل التكرار for, while ومكوناتهن
    مفهوم الدوال functions
    ماهية و كيفية إنشاء ملفات برمجية Modules
    --------نهاية المدخل و الدورة--------
    الدرس الاول

    الإستعداد للدورة
    تثبيت الأدوات اللازمة
    التعرف على النسخة المطلوبة

    ببساطة زيارة الموقع التالي و تثبيت بيئة Python:
    Click on me...



    الصور المرفقة     
    التعديل الأخير تم بواسطة HVIPS5 ; 06-28-2011 الساعة 04:21 PM

  2. #2
    عضو جديد


    تاريخ التسجيل: Jun 2011
    رقم العضوية: 7
    المشاركات: 2,181
    HVIPS5 غير متواجد حالياً

    رد: مدْخل إلى Python دورة حسابية و منطقية مع Python


    الدرس الثانى

    طريقة الشرح في هذه الدورة

    بكل بساطة سأستعمل نموذج الشيفرة لعرض الشيفرة كالتالي:

    كود:
    def sayHi(name):
        print "Hi", name
    هذا النموذج سيكون للشيفرة المصدرية ذات الإمتداد .py

    بخصوص المحاولات اثناء التعليم في نافذة Python shell ستكون على النحو التالي

    السبورة
    : بتكون الأوامر باللون الرمادي و ستكون المخرجات باللون البمبي الباهت


    كود:
     
    >>> "Hi Python"
    'Hi Python'


  3. #3
    عضو جديد


    تاريخ التسجيل: Jun 2011
    رقم العضوية: 7
    المشاركات: 2,181
    HVIPS5 غير متواجد حالياً

    رد: مدْخل إلى Python دورة حسابية و منطقية مع Python


    الدرس الثالث

    التعرف على نافذة Python Shell

    بعد أن قمنا بتثبيت بيئة Python:

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

    الآن و بعد التثبيت و في نظام Windows و من القائمة الرئيسية للنظام نشاهد بيئة Python مثبتة بجهازنا.


    نقره لتكبير أو تصغير الصورة ونقرتين لعرض الصورة في صفحة مستقلة بحجمها الطبيعي


    نقوم بالضغط من هذه القائمة على الأمر
    -->
    IDLE (Python Gui).

    لنشاهد أمامنا نافذة عادية و مألوفة بالنسبة لنا مكونة من زرارات الإغلاق بالركن الأعلى الأيمن و تكبير و تزغير و قوائم بالجهة اليسرى و هي قوائم عادية بالنسبة لنا و مألوفة ايضاً و عنوان هذه النافذة هو Python Shell.



    التعرف على أهم نافذة في بيئة Python:
    (Python Shell)

    الآن نشاهد النافذة Python Shell مفتوحة أمامنا و هناك مساحة كبيرة بيضاء فيها نصوص باللغة الإنجليزية نزولاً لتحت لنشاهد علامة <<< و نشاهد مؤشر الكتابة بجانبه مباشرة و كأنه ينتظر منا كتابة شيء ما!
    نقره لتكبير أو تصغير الصورة ونقرتين لعرض الصورة في صفحة مستقلة بحجمها الطبيعي


    هذه العلامة تُسمى بصفة عامة Command Prompt و غالباً ما تكون في متل هذا النوع من النوافذ للإشارة بكتابة سطور أوامر برمجية. هذا يعني أن مؤشر الكتابة الغمّاز ينتظر منا كتابة أمر معين و ليس أي سطر عشوائي أو عبارة طبيعية بلغتنا الطبيعية.

    ملاحظة:
    سنستعمل كلمة مؤشر الأوامر للإشارة إلى Command Prompt
    >>>



  4. #4
    عضو جديد


    تاريخ التسجيل: Jun 2011
    رقم العضوية: 7
    المشاركات: 2,181
    HVIPS5 غير متواجد حالياً

    رد: مدْخل إلى Python دورة حسابية و منطقية مع Python


    الدرس الرابع

    المحادثة الأولى مع Python
    "Hello Python"



    تذكير:

    حسناً توقفنا عند مؤشر الأوامر <<< و الذي هو عبارة عن ثلاثة اقواس حادة متجهةً إلى اليمين و نجد مسافة بسيطة ضرورية بعدها و يتوقف عندها مؤشر الكتابة. و كما أسلفنا هنا Python تنتظر منا كتابة أمر معين أو جملة معينة و لكن بشرط! أن يكون هذا الأمر و هذه الجملة مفهومة و معروفة لدى Python. أي أنها يجب أن تكون بلغة Python و التي هي موضوعنا هنا.


    محادثة مملة مع Python:
    الآن نقوم بكتابة سطر ترحيب و هو عبارة عن نص محصور بين علامتي التنصيص المعروفة "". و ليكن مرحبا Python. على النحو التالي "Hello Python". ثم نقوم بعد ذلك مباشرة بالضغط على مفتاح Enter. لنشاهد أن Python قامت بطباعة نفس النص و إعطائنا مؤشر أوامر جديد و فارغ يقف عنده مؤشر الكتابة لكتابة أي أمر نشاء.

    هكذا:


    كود:
     >>> "Hello Python"
    'Hello Python'
    >>>
    الآن نقوم بكتابة نص آخر "My name is Fatemah" و نقوم بالضغط على مفتاح الإدخال مرة أخرى. سنشاهد أن Python قامت بإجراء نفس العملية السابقة. نجرب مرة أخرى لكي نتآلف مع سطر الأوامر وكتابة عدد معين متل 123. سنشاهد نفس العملية و طباعة نفس العدد.

    حاولوا كتابة التالي بنفس الطريقة السابقة مقابل كل سطر أوامر

    • 203
    • "Nothing is impossible"
    • "b"
    • 'Which came first, the chicken or the egg?'
    • True
    • False
    • None
    • -34

    سنشاهد العملية و المخرجات على النحو التالي

    كود:
     
    >>> 203
    203
    >>> "Nothing is impossible"
    'Nothing is impossible'
    >>> "b"
    'b'
    >>> 'Which came first, the chicken or the egg?'
    'Which came first, the chicken or the egg?'
    >>> True
    True
    >>> False
    False
    >>> None
    >>> -34
    -34
    >>>
    نلاحظ أن Python تردد نفس السطور تارة و تارة تقوم بكتابة نفس القيمة و تارةً اخرى تتعامل مع بعض المدخلات بطريقة خاصة متل سطر الأمر None لاحظوا أنها لم تتفاعل مع الأمر. و لكنها في الحقيقة تفاعلت مع الأمر بطريقتها. سنتعرف على تلك العبارات و الكلمات.

    إستنتاج:

    نلاحظ ايضاً ان Python في هذا المسال السابق و كأنها مقلد و حتى أنها لم تجبنا على السؤال المشهور(ما الأول الدجاجة أم البيضة؟) و لا حتى بكلمة "لا أدري"




  5. #5
    عضو جديد


    تاريخ التسجيل: Jun 2011
    رقم العضوية: 7
    المشاركات: 2,181
    HVIPS5 غير متواجد حالياً

    رد: مدْخل إلى Python دورة حسابية و منطقية مع Python


    الدرس الخامس

    إستعمال الأمر Print
    لطباعة المعلومات بتنسيق و كفاءة




    إستعمال الأمر print:

    تُرى ما الفائدة الأولى من الأمر print؟

    أولاً هذا الأمر لتنسيق المخرجات (طباعتهن على الشاشة بشكل منسق) خاليةً من بعض الرموز الزائدة التي لا تفيدنا بشيء عندما تكون مخرجات. مثلاً, و من المشاركة السابقة عندما قمنا بكتابة "Hello Python" قامت Python بطباعة النص متضمنةً علامة تنصيص أخرى 'Hello Python' مشيرةً بذلك إلى أن نوع البيانات هو سلسلة حرفية string. سنأخذ أنواع البيانات إن شاء الله لاحقاً


    كود:
     >>> "Hello Python"
    'Hello Python'
    نلاحظ أن Python قامت بطباعة الجملة الترحبيية بين علامتي التنصيص الفردية ' '. و حتى لو كتبنا الجملة الترحبيية بين علامتي التنصيص الفردية عند سطر الأوامر فإن النتيجة لا تختلف ايضاً كما هو الحال في المشاركة السابقة ايضاً

    كود:
     >>> 'Which came first, the chicken or the egg?'
    'Which came first, the chicken or the egg?'
    الآن نجرب الأمر print لنشاهد نصوص مخرجة خاليةً من الرموز الزائدة.

    كود:
     >>> print "Hello Python"
    Hello Python
    >>> print 'Which came first, the chicken or the egg?'
    Which came first, the chicken or the egg?
    >>> |
    و ايضاً للأمر print أهمية أخرى حيثُ يقوم بطباعة المعلومات التي تكون عبارة عن مجموعة أنواع بيانات مختلفة. مثلاً إسمي فاطمة و عمري 23 سنة, نلاحظ أنها جملة تتكون من حروف نصية و عدد(23) و هنا اختلاف في نوعية البيانات بين النصوص و الأعداد.

    كود:
     >>> print "My name is Fatemah, I am", 23,"years old."
    My name is Fatemah, I am 23 years old.
    >>> |
    الجدير بالملاحظة هنا! هو أننا قمنا بتفريق البيانات بعلامة الفاصلة(في سطر الأمر print). و هذا ضرورياً لفصل أنواع البيانات اثناء عملية إخراج و طباعة المعلومات بواسطة الأمر print.


    نعم نستطيع كتابة كامل الجملة في هذه الحالة بين علامتي التنصيص المزدوجة أو الفردية ببساطة "My name is Fateman, I am 23 years old". و سنشاهد النتائج تماماً متل العملية السابقة.


    كود:
     >>> print "My name is Fatemah, I am 23 years old."
    My name is Fatemah, I am 23 years old.
    >>>

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



  6. #6
    عضو جديد


    تاريخ التسجيل: Jun 2011
    رقم العضوية: 7
    المشاركات: 2,181
    HVIPS5 غير متواجد حالياً

    رد: مدْخل إلى Python دورة حسابية و منطقية مع Python


    الدرس السادس

    التلميحات
    Comments




    التلميحات:

    هذه المشاركة ازغر مشاركة بالعالم بالنسبة لدرس في دورة معينة و هي حول التلميحات Comments. تكون الشيفرة البرمجية بعض الأحيان غامضة لذلك نجد إمكانية إيضاح هذا الغموض بواسطة نصوص طبيعية(بلغتنا الطبيعية عادة الإنجليزية). هذه الإيضاحات ليست لـ Python حيثُ أن Python لن تقرأها و لن تلقي لها بالاً. و إنما هي لمن يقرأ الشيفرة البرمجية(الإنسان). ربما يكون هو صاحب البرنامج نفسه ليتذكر فيما بعد ما فائدة السطر البرمجي الذي يأتي بعد التلميح, أو ما عمل هذا الجزء من الشيفرة؟. أو لأي شخص يريد قراءة الشيفرة للإستفادة منه او تطويره. هذه الفائدة الأساسية من وجود التلميحات بمختلف لغات البرمجة و ليست Python فقط.

    في لغة Python التلميح يكون ذلك السطر المكتوب بلغة طبيعية يفهمها الإنسان و لكن بشرط! أن يبدأ هذا السطر بالعلامة(الحرف) #

    تماماً كما هو واضح في المثال التالي من أجل شرح عمل جملة التكرار. و هي عبارة عن العد من 1 إلى 10.


    كود:
     #The following is a for loop can count from 1 to 10.   
    for i in range(1,11):
        print i
    لا تتهتموا الآن إلى الشيفرة السابقة كثيراً و إنما فقط إلى كيفية إنشاء تلميح في لغة Python في السطر رقم 1 من الشيفرة السابقة.

    أيضاً نستطيع كتابة التلميح اسناء دراستنا و تطبيقاتنا السريعة في نافذة Python Shell.


    كود:
     >>> #Create an object reference that holds an integer value.
    >>> x = 20
    >>> #The following print statement will print x plus 2
    >>> print x + 2
    22
    >>>

    "]هذا كل شيء عن التلميحات في لغة Python.[/color]




  7. #7
    عضو جديد


    تاريخ التسجيل: Jun 2011
    رقم العضوية: 7
    المشاركات: 2,181
    HVIPS5 غير متواجد حالياً

    رد: مدْخل إلى Python دورة حسابية و منطقية مع Python


    الدرس السابع

    موجزاً لأهم ما سبق

    موجزاً لأهم ما سبق على شكل نقاط...

    • نافذة Python Shell هي تلك النافذة التي تعتمد على سطور الأوامر لكتابة شيفرات و نصوص برمجية بلغة Python.
    • نافذة Python Shell هي اسرع أداة تُستعمل للتعرف على لغة Python و على عمل إختبارات مباشرة و تطبيقات مباشرة ايضاً لبرامجنا.
    • سطر الأمر في نافذة Python Shell يكون مباشرة (بعد المسافة التلقائية) بعد علامة مؤشر الأوامر <<<.
    • بعد كتابة سطر الأمر بلغة Python و بشكل صحيح نضغط على مفتاح Enter لمشاهدة نتيجة الأمر.
    • نستعمل الأمر print لتنسيق المخرجات و طباعتهن بشكل منسق يخلو من أي علامات و رموز زائدة.
    • نستعمل الأمر print ايضاً لإخراج و طباعة معلومات قد تحتوي على أنواع بيانات مختلفة متل الأعداد, السلسلة الحرفية, قوائم و غير ذلك.
    • التلميحات comments تُستعمل غالباً في الملف المصدري أو داخل الدوال لكتابة سطور بلغة طبيعية يفهم عليها الإنسان ليسهل عليه مراجعة الشيفرة و تطويرها او ليسهل على القاريء للشيفرة فهم البرنامج.
    • يجب أن يبدأ سطر التلميح بالعلامة الحرفية المربعة #.


    لمحة سريعة عن أنواع البيانات
    الرئيسية في لغة
    Python



    أنواع البيانات في لغة Python:

    مجموعة البيانات الرئيسية على شكل هيكل:


    • السلسلة الحرفية String
    • الأعداد Numbers
      • عدد صحيح integer
      • عدد ذو فاصلة عائمة float
      • عدد عشري Decimal Number
      • عدد مركب complix number

    • قيم بُول Boolean Values
    • القائمة list
    • tuple
    • القاموس Dictionary


    التعرف على أنواع البيانات:


    السلسلة الحرفية String:

    "لغة Python بسيطة بالمراس و التعلم المباشر"
    السطر المكتوب بالأعلى مباشرة عبارة عن سلسلة حرفية. تُرى لماذا؟ لأنها موجودة بين علامتي التنصيص المزدوجة. كذلك السلسلة التالية
    'أن أحب لغة Python', لأنها موجودة بين علامتي تنصيص فردية.

    نطبق!


    كود:
     >>> "Hi there..."
    'Hi there...'
    >>> 'Hello Python'
    'Hello Python'
    >>> |


    الأعداد Numbers:


    • الأعداد الصحيحة integer

    بنعرف الأعداد الصحيحة من الصفوف الدنيا المدرسية و هي مجموعة الأعداد التي تبدأ من الصفر إلى ما لا نهاية الموجبة و السالبة, متل:
    1 , 0, 3498, -2, +2 ....

    نطبق!


    كود:
     >>> 23
    23
    >>> -33
    -33
    >>> 4958
    4958
    >>> +34
    34
    >>>

    • الأعداد ذات الفاصلة العشرية العائمة Floating Numbers

    و هي الأعداد التي تحتوي على الفاصلة العشرية العائمة (.) ليست كما في المنهاج العربي (,) و لكن النقطة و ليس الفاصلة, تماما على نحو:
    1.0, 39.66654, ....
    أيضاً السالبة و الموجبة

    نطبق!


    كود:
     
    >>> 2.3
    2.2999999999999998
    >>> 1.0
    1.0
    >>> -44.4
    -44.399999999999999
    >>> 65.5432
    65.543199999999999
    >>> |


    نلاحظ أن Python قامت بكتابة الأعداد بشكل آخر سنتعرف على ذلك لاحقاً إن شاء الله.


    • الأعداد العشرية Decimal Numbers

    خارج نطاق الدورة... سأحاول ذلك


    • الأعداد المركبة Complix Number

    و هي تلك الأعداد التي تتكون من جزئين. حزء حقيقي real و آخر خيالي imaginary. يكون الجزء الحقيقي هو أي عدد حقيقي و أما الجزء الخيالي أيضاً اي عدد حقيقي و لكن ينتهي بحرف اللاتين j.

    تطبيق!



    كود:
     >>> 1j
    1j
    >>> 32-3.4j
    (32-3.3999999999999999j)
    >>> 2.322j
    2.3220000000000001j
    >>> 22.3+1.0j
    (22.300000000000001+1j)
    >>> |

    خارج نطاق الدورة.

    قيم بُول Boolean Values:

    هذا النوع من البيانات لا يحتوي إلا على قيمتين فقط. و هي قيمة صائبة True أو قيمة خاطئة False. هذه البيانات تستعمل في عمليات منطقية.

    نطبق!


    كود:
     >>> True
    True
    >>> False
    False
    >>> |

    القائمة list:

    نستطيع إنشاء قائمة تحتوي على مجموعة من القيم و البيانات بأنواع مختلفة من أنواع البيانات. هذا النوع من البيانات يتميز نحوياً بأنه يضم القيم بين الأقواس المربعة []. نشاهد المسال التالي:

    كود:
     >>> [1,2,3,4,5,6,7]
    [1, 2, 3, 4, 5, 6, 7]
    >>> ["Raghad", 3, 3.0, True]
    ['Raghad', 3, 3.0, True]
    >>> [[3,4], 43]
    [[3, 4], 43]
    >>> |
    الجدير بالملاحظة هنا, هو أننا نستطيع إنشاء قائمة تحتوي على قيم معينة من نوع بيانات واحد, أو قيم من أنواع بينات مختلفة متل القائمة الموجودة عند سطر الأوامر التاني
    ["Raghad", 3, 3.0, True]
    و هي عبارة عن قائمة تحتوي على سلسلة حرفية و عدد صحيح و عدد ذو فاصلة عائمة و قيمة من قيم بُول

    سنهتم بها في حالة السؤال عنها إن شاء الله...

    نوع البيانات المعروف بـ Tuple:

    آسفة لم اجد معنى عربي ملائم لكلمة tuple. و لكن هذا النوع بالضبط متل النوع السابق القائمة list و لكن القيم تكون موجودة بين أقواس منحنية (). و هناك اختلاف بسيط في آليتها و الحفاظ على قيمتها كثوابت...

    سنهتم بها في حالة السؤال عنها إن شاء الله...
    نطبق!

    كود:
     >>> (1,2,3,4,5,6,7)
    (1, 2, 3, 4, 5, 6, 7)
    >>> ("Raghad", 3, 3.0, True)
    ('Raghad', 3, 3.0, True)
    >>> ([3,4], 43)
    ([3, 4], 43)
    >>> |

    لاحظوا أنها لا تختلف في طريقة إحتوائها للقيم عن نوع القائمة list. ولكن هناك فرق برمجي و آلي جوهري سنتعرف عليه لاحقاً

    نوع البيانات Dictionary:
    هذا النوع من البيانات يمكننا من تخزين قيم بداخله و الوصول إلى تلك القيم لاحقاً بواسطة المفتاح, هذا المفتاح ربما يكون حرف او رقما أو كلمة. لا يختلف هذا النوع عن القائمة كثيراً إلا في طريقة الوصول إلى محتوياته بواسطة هذا المفتاح فقط.

    سنهتم بها في حالة السؤال عنها إن شاء الله...





  8. #8
    عضو جديد


    تاريخ التسجيل: Jun 2011
    رقم العضوية: 7
    المشاركات: 2,181
    HVIPS5 غير متواجد حالياً

    رد: مدْخل إلى Python دورة حسابية و منطقية مع Python


    الدرس الثامن

    الدالة المساعدة
    help
    ضيفة الموضوع



    البدء مع الدالة help():

    هذه الدالة ستكون ضيفة معنا من الآن و صاعداً(اثناء بعض التطبيقات و المشاركات عند الضرورة). و لازم علينا نحترمها شوي!

    الدالة help تكون اداة سريعة لمشاهدة و تذكر بعض الأمور المتعلقة بلغة python اسناء التطبيق في نافذة Python Shell. آسفة جداً فهي لا تفهم إلا لغة Python و لا تُجيب علينا إلا باللغة الإنجليزية البحتة لذلك نتحملها قليلاً. الشكل النحوي لهذه الدالة كالتالي:


    كود:
     
    help('something')
    هنا يكون ما بين القوسين هو عبارة عن نص معين من نوع البيانات السلسلة الحرفية string. نكتب كلمة معروفة لتبدأ الدالة بالبحث عن هذه الكلمة و سرد كل المعلومات اللازمة عن هذه الكلمة.

    تُرى ما هي هذه الكلمة المعروفة؟
    حسناً التجربة خير بُرهان!

    نطبق التالي بكتابة كلمة 'help' بين اقواس الدالة help ثم نضغط المفتاح الإدخال كأي أمر عادي.


    كود:
     >>> help('help')
    
    Welcome to Python 2.6!  This is the online help utility.
    
    If this is your first time using Python, you should definitely check out
    the tutorial on the Internet at http://docs.python.org/tutorial/.
    
    Enter the name of any module, keyword, or topic to get help on writing
    Python programs and using Python modules.  To quit this help utility and
    return to the interpreter, just type "quit".
    
    To get a list of available modules, keywords, or topics, type "modules",
    "keywords", or "topics".  Each module also comes with a one-line summary
    of what it does; to list the modules whose summaries contain a given word
    such as "spam", type "modules spam".
    
    >>> |

    نلاحظ أن python استجابت لأمر الدالة help و جلبت لنا معلومات مناسبة لتلك الكلمة الموجودة بين الأقواس. هذه المعلومات من ملفات التوثيقات الرسمية لمطوري لغة python و التي تكون مثبتة تلقائياً عند تثبيت بيئة عمل python.

    حسناً ترى ما تلك المعلومات و ما فحوى تلك المعلومات؟
    لو نظرنا إليها نجدها مجرد ترحيب و بعض الإرشادات. ما يهمنا هنا هي الإرشادات و مفادها كالتالي:

    "
    إذا كانت هذه المرة الأولى في استخدام Python فعليك زيارة موقع الدروس هنا
    http://docs.python.org/tutorial/.

    أدخل إسم معين لأي mudule او مفتاح كلمة او موضوع للحصول على مساعدة في كتابة البرامج... للخروج من المساعدة و العودة إلى سطور الأوامر اكتب الأمر quit.
    :
    :
    "


    لا يهمنا هذا الآن لأنني سأريكم على ضوء ما سبق كيفية استعمال هذه الدالة بشكل مناسب و في المشاركات اللاحقة ايضاً ستكون هذه الدالة معنا عند الضرورة, و لكن سأريكم مثال هنا افضل...(مسال عالطاير)...

    لكل لغة برمجة هناك مفاتيح كلمات keywords و هي عبارة عن كلمات برمجية معرّفة و محجوزة للغة نفسها. مسلاً كلمة if التي تُستعمل لأغراض منطقية (التحقق من شرط معين). أو الأمر return و الذي يقوم بإسترجاع قيمة معينة من دالة ما. و هكذا...

    الآن نجرب دالة المساعدة (ضيفتنا) في استعراض قائمة مفاتيح الكلمات المحجوزة و الموجودة في لغة Python.

    نطبق!



    كود:
    >>> help('keywords')
    
    Here is a list of the Python keywords.  Enter any keyword to get more help.
    
    and                 elif                if                  print
    as                  else                import              raise
    assert              except              in                  return
    break               exec                is                  try
    class               finally             lambda              while
    continue            for                 not                 with
    def                 from                or                  yield
    del                 global              pass                
     
    
    >>> |

    نلاحظ الأمر و نلاحظ الرسالة.
    "
    هنا قائمة مفاتيح الكلمات في لغة Python و أدخل أي كلمة لتحصل على مزيد من المساعدة:
    :
    :
    "


    و نلاحظ مفاتيح الكلمات بأعمدة وصفوف...

    هذا كل شيء عن الدالة help.




  9. #9
    عضو جديد


    تاريخ التسجيل: Jun 2011
    رقم العضوية: 7
    المشاركات: 2,181
    HVIPS5 غير متواجد حالياً

    رد: مدْخل إلى Python دورة حسابية و منطقية مع Python


    الدرس التاسع

    المتغيرات
    Variables



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

    المتغيرات:

    البرنامج بصفة عامة يتكون من جزئين. جزء البيانات و جزء العمليات على تلك البيانات. و غالباً ما نريد تخزين و حفظ البيانات و نتائج العمليات عليهن للإستفادة منها في سير البرنامج. هنا تتجسد أهمية و جوهرية ما يُعرف بالمتغير. تماماً و بشكل تصوّري فإن المتغيرات في لغة البرمجة بصفة عامة هي قوالب (صناديق) تحتوي على معلومات, مثلاً:

    name = "Nora"
    age = 5

    هنا name و age عبارة عن اسماء لمتغيرات تحتوي على معلومات(بيانات) متل "Nora" و 5 على التوالي. هذه المتغيرات بكل بساطة في لغة البرمجة python. نستعمل علامة التعيين(=) لتعيين قيمة(بيانات) لهذا المتغير. عندما نقوم بإنشاء متغير أو اكتر في لغة python فإن النظام المسؤول عن البرنامج يقوم بتخزين و تذكر تلك القيم و تلك البيانات بواسطة تلك الأسماء(المتغيرات).

    طبعاً تلك القيم و تلك البيانات التي نقوم بتخزينهن في المتغيرات هي أي نوع من أنواع البيانات المتوفرة في لغة
    Python متل:

    • سلسلة حرفية
    • عدد ما
    • قائمة
    • tuple

    مشاركة سابقة حول أنواع البيانات

    قوانين عند إنشاء المتغيرات:
    على شكل نقاط:

    • يجب أن تكون المتغيرات بالحروف الإنجليزية(يفضل إجتناب تسمية المتغيرات بحروف عربية او لغة أخرى)
    • يجب أن يبدأ المتغير بحرف و ليس برقم و ما يلي الحرف ممكن أن يكون ارقاماً
    • يجب أن لا يحتوي إسم المتغير على مسافة أو رموز رياضية او حسابية متل الفاصلة النقطة النجمة وو
    • يجب أن لا يكون اسم المتغير اسماً لأي إسم آخر معروف و معرّف مسبقاً في لغة Python. متل مفاتيح الكلمات if , return, and, or, as...

    هذه أهم القوانين لو اتبعناها لن نضطر للسؤال عن غيرها

    إنتهاج عُرفي عند إنشاء المتغيرات:

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

    تطبيق عملي:

    كود:
     >>> rectangleSides = 4
    >>> shapeName = 'square'
    >>> pi = 3.14
    >>> direction = 'clockwise'
    >>> x = 2.4
    >>> y = 0.0
    >>> coordinate = (x, y)
    >>> print coordinate
    (2.3999999999999999, 0.0)
    >>> |
    لاحظوا كيفية إنشاء المتغيرات و كيفية تخزين البيانات, ايضاً لاحظوا كيفية الإستفادة من المتغيرات لإنشاء متغيرات أخرى كما هو واضح في تعريف المتغير coordinate لإحداثية x و y من المتغيرات x و y التي أنشانهن سابقاً و لاحظوا طريقة طباعة تلك الإحداثيات بين الأقواس للدلالة على أن المتغير coordinate يحتوي على قيمة من نوع البيانات tuple.

    حاولوا التطبيق لغة Python ليست إلا بالممارسة و معلومات بسيطة.




  10. #10
    عضو جديد


    تاريخ التسجيل: Jun 2011
    رقم العضوية: 7
    المشاركات: 2,181
    HVIPS5 غير متواجد حالياً

    رد: مدْخل إلى Python دورة حسابية و منطقية مع Python


    الدرس العاشر


    إستكشاف الأخطاء
    Exceptions
    مفهوم الإستثناءات



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

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

    الأخطاء النحوية هي تلك الأخطاء التي تكون في القواعد النحوية للغة. على سبيل المسال كما درسنا سابقاً في قوانين إنشاء المتغيرات

    حسناً دعونا نخطيء و ننشيء متغيراً يحتوي على مسافة فارغة متل my name:
    لو قمنا بمخالفة تلك القوانين اثناء إنشاء متغير ما, ترى ما سيحدث.

    كود:
     >>> my name = "Sameerah"
    SyntaxError: invalid syntax
    >>> |
    نلاحظ أن Python إنزعجت من هذا الأمر و قامت بإصدار رسالة خطأ من نوع (خطأ نحوي Syntax Error). ايضاً ربما نشاهد تحبير باللون الأحمر على المكان القريب من مكان الخطأ.

    ايضاً لو فرضنا أننا قمنا بإنشاء متغير r بحرف لاتيني صغيراً ثم أردنا أن نشاهد قيمة r بواسطة الأمر print و لكننا كتبنا الحرف R هكذا! تُرى ما سيحدث؟

    نشاهد هذا:


    كود:
    >>> r = 'first letter'
    >>> print R
    
    Traceback (most recent call last):
      File "<pyshell#19>", line 1, in <module>
        print R
    NameError: name 'R' is not defined
    >>> |
    
    نشاهد أن هناك رسالة خطأ و أن python تنكرت للحرف R بإنه اسم ليس موجود مسبقاً و ليس معرفاً و ليس له قيمة(ما R هذه؟)

    تُرى ما السبب؟

    السبب أن لغة Python حساسة لحالة الأحرف و هي من نوع Case-sensitive Programming Language. هذا يعني أن الإسم MyName ليس متل myName و ليس متل Myname و هكذا...

    (حساسة ما فينا نزعلها)



    حسناً مرة أخرى و بمناسبة محور هذا الموضوع(الحساب) فإن هناك خطأ حسابي معروف رياضياً و هو القسمة على صفر و هذا لا يجوز في الرياضيات. ترى هل python ستتعرف على هذا النوع من الأخطاء؟

    حسناً نجرب علماً بأن علامة القسمة في لغة python هي /:


    كود:
     >>> 2 / 0
    
    Traceback (most recent call last):
      File "<pyshell#14>", line 1, in <module>
        2 / 0
    ZeroDivisionError: float division
    >>> |

    نعم! و ايضاً قامت بإصدار استثناء مشيرةً بأن نوع الخطأ هو القسمة على صفر كما نلاحظ في السطر الآخير Zero Division Error لا نهتم لباقي الرسالة كثيراً الآن.


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


    كود:
     >>> '1' + 2
    
    Traceback (most recent call last):
      File "<pyshell#16>", line 1, in <module>
        '1' + 2
    TypeError: cannot concatenate 'str' and 'int' objects
    >>> |
    نعم! العدد واحد بالنسبة لنا رقماً و لكن في هذه الحالة هو مجرد قيمة من نوع سلسلة حرفية string لوجوده بين علامة التنصيص فلغة البرمجة لا تتعامل معنا بالنية و إن كانت نيتنا طيبة. لذلك قامت python بإصدار خطأ من نوع الأخطاء النوعية Type Error كما نشاهد في آخر سطر من الرسالة


    لغة Python هي Dynamic-typed Programming Language تتعامل مع البيانات بديناميكية و مرونة عالية و لكنها في نفس الوقت و في كتير من الأحيان فيه لغة مستقرة بيانياً Static-typed Programming Language. تماماً متل الحالة السابقة في اجراء العمليات بطريقة(التشكتشوكا) غير مقبولة...


    (للمزيد حول أنواع البيانات)

    حسناً ربما البعض يسأل (هل تستطيعي يا رغــد كتابة لنا كل أنواع الأخطاء؟)
    الإجابة نعم بكل بساطة اكتبوا الدالة help على النحو التالي عند سطر الأوامر.


    كود:
     
    help('exceptions')

    ستشاهدوا قائمة (يا لطيف) و بتمنى لكم التوفيق...



 
صفحة 1 من 2 12 الأخيرةالأخيرة

ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •