مضى على الشبكة و يوم من العطاء.

الدرس الثاني : المتغيرات والتعليقات (Variables and Comments)

RTH

Developer

السمعة:

بسم الله الرحمن الرحيم
اللهم علّمنا ما ينفعنا وانفعنا بما علّمتنا إنك أنت العليم الحكيم

سنتحدث في هذا الدرس عن عدة مواضيع تتناول المتغيرات (Variables) والتعليقات (Comments).
1. المتغيرات (Variables):
دعونا نتخيل أنك تملك صندوق A ولديك ثلاث كُرات مُختلفة وتستطيع وضع أي كُرة في هذا الصندوق وتغيير محتواه في أي وقت تشاء , يمكننا تشبيه الصندوق على أنه هو المتغير والكُرات الثلاث هي القيم المخزنة فيه , ومن هنا جاءت تسمية المتغير بهذا الاسم لأنك تقوم بتغيير محتواه في أي وقت أردت ولكن يبقى اسمه كما هو. أما صندوق B فهو صندوق مغلق ولا يمكن التغيير على محتواه , هنا الصندوق B يمثل الثابت (Constant) والكُرة الموجودة فيه هي قيمة ثابتة ولا يمكن تغييرها.

لbox.PNG


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

Python:
message = "Welcome to Shell!"

print(message)

message = "Computer and Network Security"
print(message)
وهذه المخرجات التي تظهر لنا عند تنفيذ البرنامج أعلاه :
Python:
Welcome to Shell!
Computer and Network Security
قمنا بإضافة متغير باسم message وكل متغير يرتبط بقيمة معينة وهي البيانات التي تم تخزينها بداخله, وفي برنامجنا القيمة هي عبارة عن النص “Welcome to Shell” وهنا تعمل المتغيرات على زيادة عمل المفسّر (Python Interpreter) بحيث أنه عندما يقوم بقراءة أول سطر وتنفيذه فإنه يربط المتغير message مع القيمة Welcome to Shell , وعندما يصل إلى السطر الثاني يقوم بطباعة القيمة المرتبطة بالمتغير على الشاشة.
وكما علمنا أنه يمكن التعديل على قيمة المتغير ففي السطر الثالث قمنا بتعديل البيانات المخزنة إلى " Computer And Network Security " وأصبحت هذه القيمة هي القيمة الجديدة المخزنة في المتغير message ثم قمنا بطباعته.


ماذا يحدث عند تنفيذ هذا البرنامج ؟
عند فتح الملف الذي قمنا بتسميته task_1.py , حيث يشير الإمتداد (py) إلى أن هذا الملف هو عبارة عن برنامج بايثون , يقوم المحرر بتشغيل الملف بواسطة المفسّر الخاص ببايثون (python interpreter) الذي يقرأ البرنامج ويحدد معنى كل كلمة موجودة فيه , على سبيل المثال عندما يقرأ المفسّر كلمة print متبوعة بأقواس (parentheses) يقوم بطباعة ما داخل الأقواس على الشاشة.

  • عند استخدام المتغيرات في بايثون يجب علينا الإلتزام في بعض القواعد والإرشادات المهمة , حيث أن كسر هذه القواعد يعمل على حدوث بعض الأخطاء (errors) وتساعدك هذه التعليمات أيضًا على كتابة تعليمات برمجية يسهل قراءتها وفهمها , هذه القواعد هي :
  1. أن يحتوي اسم المتغير على حروف أو أرقام أو الشرطة السفلية ( _ ) و أن لا يحتوي على أي إشارة أو رمز حسابي مثل (+ , - , * , / , % , # , $ , … ).
  2. أن يبدأ اسم المتغير بحروف أو بالشرطة السفلية ( _ ) على أن لا يبدأ برقم .
  3. أن لا يحتوى اسم المتغير على فراغ ، مثلًا لا يصح كتابة اسم متغير بهذه الطريقة ) (user name لكن إذا كان اسم المتغير يتكون من كلمتين فيمكن الفصل بينهم بالشرطة السفلية هكذا (user_name) أو أن تقوم بكتابة أول حرف من الكلمة الثانية بحرف كبير دون الحاجة الى الفصل بينهم (userName) وتسمى خاصية الكتابة هذه (camel case) .
  4. تجنب استخدام كلمات مفتاحية أو أسماء دّوال خاصة بلغة بايثون ، كأن تستخدم مثلًا print كإسم للمتغير الخاص بك لأن كلمة print هي اسم لدّالة في بايثون خاصة بالطباعة . وفي ما يلي الكلمات المفتاحية وأسماء الدّوال الخاصة ببياثون :
photo_2024-02-14_17-03-38.jpg
photo_2024-02-14_17-10-49.jpg
5. لغة بايثون حساسة لحالة الحرف (sensitive case) فكن على حذر عند كتابتك لإسم المتغير لأن الأحرف الكبيرة تختلف عن الأحرف الصغيرة ، مثلًا لنقل أنك أردت تسمية متغير بإسم Ahmad فلا يجوز استخدام هذا الإسم هكذا ahmad لأن مفسر بايثون سوف يفهم أن ahmad متغير آخر يختلف عن Ahmad ويعطيك أن هناك خطأ .
معلومة: * انتبه عند استخدام الحرفين (l) والحرف (O) , فعند قراءة البرنامج في وقت لاحق قد تظن أنها (1,0).
*يستحب أن تكون أسماء المتغيرات مفهومة (وصّفيّة) مثلًا إذا أردنا كتابة اسم متغير يخزن أسماء طلاب ،فالإسم (student_name) أفضل من تسمية (s_n) ، ولا يستحب أن يكون اسم المتغير طويل إذا ما كان باستطاعتك اختصاره، مثل: name_length أفضل من تسمية length_of_persons_name


  • كما تحدثنا أن من ميزات لغة بايثون أنها واضحة وتُسهّل عليك اكتشاف الأخطاء والتعامل معها ، وسبب تميّز لغة بايثون بهذه الميزة على غيرها من اللغات توفر تتبّع للبرنامج( Traceback ) هو عبارة عن سجل للمكان الذي يواجه فيه المفسر مشكلة عند محاولة تنفيذ التعليمات البرمجية الخاصة بك .
Python:
message = "Welcome to Shell!"
print(mesage)
وهذه المخرجات التي تظهر لنا عند تنفيذ البرنامج :
Python:
Traceback (most recent call last):
  File "c:\Users\THINK\Desktop\python_proj\task1\task_1.py", line 2, in <module>
    print(mesage)
        ^^^^^^
NameError: name 'mesage' is not defined. Did you mean: 'message'?
في هذا المثال هناك خطأ في كتابة اسم المتغير message داخل جملة الطباعة ، هنا بايثون استخدم طريقة التتبع في حل المشكلة حيث أن هذه الطريقة تحدد مكان الخطأ ( في أي ملف وفي أي سطر ) ويشير إلى الخطأ أيضًا بوضع هذه الإشارة(^^^) تحت الخطأ وأيضًا يخبرك بأن المتغير mesage غيرموجود ويعطي توقّع بأنك تقصد المتغير message، فيسألك هل تقصد message ؟
هذه الطريقة في التعامل مع الأخطاء تسهل عليك كثيراً كتابة البرامج بهذه اللغة وهذا يعود لمفسر بايثون (Interpreter) الذي يبذل قُصارى جهده لمساعدتك في معرفة مكان المشكلة وماهيّتها.


  • لا تستطيع بايثون تحديد اسم المتغير المقدم بالتالي عادًة مايعني خطأ اسم المتغير أننا إما نسينا تعيين قيمة المتغير أو خطأ إملائي , فلغة بايثون كباقي لغات البرمجة صارمة لكنها تتجاهل التهجئة الجيدة والسيئة.
    هذا الخطأ يسمى syntax error حيث يكون الخطأ ناتج عن كتابة غير صحيحة للأمر البرمجي أو إلى أسماء المتغيرات ويحدث لأن بايثون لا تتعرف على جزء من البرنامج باعتباره كود بايثون صحيح.
معلومة: أثناء كتابتك لبرنامجك يقوم المحرر بتسليط الضوء على أجزاء مختلفة من البرنامج بعدة طرق. على سبيل المثال يتعرف المحرر على كلمة print على أنها اسم دّالة(function) ويعرض هذه الكلمة بلون واحد, ويدرك أيضًا أن " Welcome to Shell " ليست شيفرة برمجية (code) ويعرض هذه العبارة بلون مختلف. تسمى هذه الميّزة بإبراز بناء الجملة Syntex highlighting وهي مفيدة جداً في كتابة البرنامج.


تدريب : قم بإنشاء متغير وخزّن فيه نص معين ثم قم بطباعته , وبعد ذلك قم بالتعديل على قيمة هذا المتغير وقم بطباعة القيمة الجديدة.



2.التعليقات (Comments) :
  • في بعض الأحيان قد تحتاج إلى وضع ملاحظات معينة مكتوبة بلغتك الخاصة تقوم بتذكيرك بمقصدك من كتابة سطر معين عند قراءة البرنامج في وقت لاحق وهذا الأمر قد تحتاجه بشكل ملحوظ عند كتابة برنامج يحتوى على معلومات كثيرة وعدد كبير من الأسطر وأيضًا عند تعديل شخص غيرك على برنامجك.
  • يطلق على هذة الملاحظات اسم Comments تكون مكتوبة بلغتك الخاصة اي أنها لا تحتاج إلى أي قاعدة من قواعد كتابة البرنامج بلغة بايثون ، ما عليك سوا وضع علامة التجزئة (#) ومن ثم البدء بكتابة ملاحظتك في أي مكان تريدة من البرنامج كما في المثال التالي :​
Python:
# Welcome message
message = "Welcome to Shell!"
print(message)

# Update message
message = "Computer and Network Security"
print(message)


هكذا نكون قد وصلنا إلى نهاية الدرس
دمتم بحفظ الله ورعايته
 
بسم الله الرحمن الرحيم
اللهم علّمنا ما ينفعنا وانفعنا بما علّمتنا إنك أنت العليم الحكيم

سنتحدث في هذا الدرس عن عدة مواضيع تتناول المتغيرات (Variables) والتعليقات (Comments).
1. المتغيرات (Variables):
دعونا نتخيل أنك تملك صندوق A ولديك ثلاث كُرات مُختلفة وتستطيع وضع أي كُرة في هذا الصندوق وتغيير محتواه في أي وقت تشاء , يمكننا تشبيه الصندوق على أنه هو المتغير والكُرات الثلاث هي القيم المخزنة فيه , ومن هنا جاءت تسمية المتغير بهذا الاسم لأنك تقوم بتغيير محتواه في أي وقت أردت ولكن يبقى اسمه كما هو. أما صندوق B فهو صندوق مغلق ولا يمكن التغيير على محتواه , هنا الصندوق B يمثل الثابت (Constant) والكُرة الموجودة فيه هي قيمة ثابتة ولا يمكن تغييرها.


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

Python:
message = "Welcome to Shell!"

print(message)

message = "Computer and Network Security"
print(message)
وهذه المخرجات التي تظهر لنا عند تنفيذ البرنامج أعلاه :
Python:
Welcome to Shell!
Computer and Network Security
قمنا بإضافة متغير باسم message وكل متغير يرتبط بقيمة معينة وهي البيانات التي تم تخزينها بداخله, وفي برنامجنا القيمة هي عبارة عن النص “Welcome to Shell” وهنا تعمل المتغيرات على زيادة عمل المفسّر (Python Interpreter) بحيث أنه عندما يقوم بقراءة أول سطر وتنفيذه فإنه يربط المتغير message مع القيمة Welcome to Shell , وعندما يصل إلى السطر الثاني يقوم بطباعة القيمة المرتبطة بالمتغير على الشاشة.
وكما علمنا أنه يمكن التعديل على قيمة المتغير ففي السطر الثالث قمنا بتعديل البيانات المخزنة إلى " Computer And Network Security " وأصبحت هذه القيمة هي القيمة الجديدة المخزنة في المتغير message ثم قمنا بطباعته.


ماذا يحدث عند تنفيذ هذا البرنامج ؟
عند فتح الملف الذي قمنا بتسميته task_1.py , حيث يشير الإمتداد (py) إلى أن هذا الملف هو عبارة عن برنامج بايثون , يقوم المحرر بتشغيل الملف بواسطة المفسّر الخاص ببايثون (python interpreter) الذي يقرأ البرنامج ويحدد معنى كل كلمة موجودة فيه , على سبيل المثال عندما يقرأ المفسّر كلمة print متبوعة بأقواس (parentheses) يقوم بطباعة ما داخل الأقواس على الشاشة.

  • عند استخدام المتغيرات في بايثون يجب علينا الإلتزام في بعض القواعد والإرشادات المهمة , حيث أن كسر هذه القواعد يعمل على حدوث بعض الأخطاء (errors) وتساعدك هذه التعليمات أيضًا على كتابة تعليمات برمجية يسهل قراءتها وفهمها , هذه القواعد هي :
  1. أن يحتوي اسم المتغير على حروف أو أرقام أو الشرطة السفلية ( _ ) و أن لا يحتوي على أي إشارة أو رمز حسابي مثل (+ , - , * , / , % , # , $ , … ).
  2. أن يبدأ اسم المتغير بحروف أو بالشرطة السفلية ( _ ) على أن لا يبدأ برقم .
  3. أن لا يحتوى اسم المتغير على فراغ ، مثلًا لا يصح كتابة اسم متغير بهذه الطريقة ) (user name لكن إذا كان اسم المتغير يتكون من كلمتين فيمكن الفصل بينهم بالشرطة السفلية هكذا (user_name) أو أن تقوم بكتابة أول حرف من الكلمة الثانية بحرف كبير دون الحاجة الى الفصل بينهم (userName) وتسمى خاصية الكتابة هذه (camel case) .
  4. تجنب استخدام كلمات مفتاحية أو أسماء دّوال خاصة بلغة بايثون ، كأن تستخدم مثلًا print كإسم للمتغير الخاص بك لأن كلمة print هي اسم لدّالة في بايثون خاصة بالطباعة . وفي ما يلي الكلمات المفتاحية وأسماء الدّوال الخاصة ببياثون :
5. لغة بايثون حساسة لحالة الحرف (sensitive case) فكن على حذر عند كتابتك لإسم المتغير لأن الأحرف الكبيرة تختلف عن الأحرف الصغيرة ، مثلًا لنقل أنك أردت تسمية متغير بإسم Ahmad فلا يجوز استخدام هذا الإسم هكذا ahmad لأن مفسر بايثون سوف يفهم أن ahmad متغير آخر يختلف عن Ahmad ويعطيك أن هناك خطأ .

  • انتبه عند استخدام الحرفين (l) والحرف (O) , فعند قراءة البرنامج في وقت لاحق قد تظن أنها (1,0).
  • يستحب أن تكون أسماء المتغيرات مفهومة (وصّفيّة) مثلًا إذا أردنا كتابة اسم متغير يخزن أسماء طلاب ،فالإسم (student_name) أفضل من تسمية (s_n) ، ولا يستحب أن يكون اسم المتغير طويل إذا ما كان باستطاعتك اختصاره، مثل: name_length أفضل من تسمية length_of_persons_name

كما تحدثنا أن من ميزات لغة بايثون أنها واضحة وتُسهّل عليك اكتشاف الأخطاء والتعامل معها ، وسبب تميّز لغة بايثون بهذه الميزة على غيرها من اللغات توفر تتبّع للبرنامج( Traceback ) هو عبارة عن سجل للمكان الذي يواجه فيه المفسر مشكلة عند محاولة تنفيذ التعليمات البرمجية الخاصة بك .
Python:
message = "Welcome to Shell!"
print(mesage)
وهذه المخرجات التي تظهر لنا عند تنفيذ البرنامج :
Python:
Traceback (most recent call last):
  File "c:\Users\THINK\Desktop\python_proj\task1\task_1.py", line 2, in <module>
    print(mesage)
          ^^^^^^
NameError: name 'mesage' is not defined. Did you mean: 'message'?
في هذا المثال هناك خطأ في كتابة اسم المتغير message داخل جملة الطباعة ، هنا بايثون استخدم طريقة التتبع في حل المشكلة حيث أن هذه الطريقة تحدد مكان الخطأ ( في أي ملف وفي أي سطر ) ويشير إلى الخطأ أيضًا بوضع هذه الإشارة(^^^) تحت الخطأ وأيضًا يخبرك بأن المتغير mesage غيرموجود ويعطي توقّع بأنك تقصد المتغير message، فيسألك هل تقصد message ؟
هذه الطريقة في التعامل مع الأخطاء تسهل عليك كثيراً كتابة البرامج بهذه اللغة وهذا يعود لمفسر بايثون (Interpreter) الذي يبذل قُصارى جهده لمساعدتك في معرفة مكان المشكلة وماهيّتها.


  • لا تستطيع بايثون تحديد اسم المتغير المقدم بالتالي عادًة مايعني خطأ اسم المتغير أننا إما نسينا تعيين قيمة المتغير أو خطأ إملائي , فلغة بايثون كباقي لغات البرمجة صارمة لكنها تتجاهل التهجئة الجيدة والسيئة.
    هذا الخطأ يسمى syntax error حيث يكون الخطأ ناتج عن كتابة غير صحيحة للأمر البرمجي أو إلى أسماء المتغيرات ويحدث لأن بايثون لا تتعرف على جزء من البرنامج باعتباره كود بايثون صحيح.

أثناء كتابتك لبرنامجك يقوم المحرر بتسليط الضوء على أجزاء مختلفة من البرنامج بعدة طرق. على سبيل المثال يتعرف المحرر على كلمة print على أنها اسم دّالة(function) ويعرض هذه الكلمة بلون واحد, ويدرك أيضًا أن " Welcome to Shell " ليست شيفرة برمجية (code) ويعرض هذه العبارة بلون مختلف. تسمى هذه الميّزة بإبراز بناء الجملة Syntex highlighting وهي مفيدة جداً في كتابة البرنامج.



تدريب : قم بإنشاء متغير وخزّن فيه نص معين ثم قم بطباعته , وبعد ذلك قم بالتعديل على قيمة هذا المتغير وقم بطباعة القيمة الجديدة.



2.التعليقات (Comments) :
  • في بعض الأحيان قد تحتاج إلى وضع ملاحظات معينة مكتوبة بلغتك الخاصة تقوم بتذكيرك بمقصدك من كتابة سطر معين عند قراءة البرنامج في وقت لاحق وهذا الأمر قد تحتاجه بشكل ملحوظ عند كتابة برنامج يحتوى على معلومات كثيرة وعدد كبير من الأسطر وأيضًا عند تعديل شخص غيرك على برنامجك.
  • يطلق على هذة الملاحظات اسم Comments تكون مكتوبة بلغتك الخاصة اي أنها لا تحتاج إلى أي قاعدة من قواعد كتابة البرنامج بلغة بايثون ، ما عليك سوا وضع علامة التجزئة (#) ومن ثم البدء بكتابة ملاحظتك في أي مكان تريدة من البرنامج كما في المثال التالي :​
Python:
# Welcome message
message = "Welcome to Shell!"
print(message)

# Update message
message = "Computer and Network Security"
print(message)


هكذا نكون قد وصلّنا إلى نهاية درسنا
دمتم بحفظ الله ورعايته
ما شاء الله يعطيك الف عاافية 🤍
 
  • Love
التفاعلات: RTH
بسم الله الرحمن الرحيم
اللهم علّمنا ما ينفعنا وانفعنا بما علّمتنا إنك أنت العليم الحكيم

سنتحدث في هذا الدرس عن عدة مواضيع تتناول المتغيرات (Variables) والتعليقات (Comments).
1. المتغيرات (Variables):
دعونا نتخيل أنك تملك صندوق A ولديك ثلاث كُرات مُختلفة وتستطيع وضع أي كُرة في هذا الصندوق وتغيير محتواه في أي وقت تشاء , يمكننا تشبيه الصندوق على أنه هو المتغير والكُرات الثلاث هي القيم المخزنة فيه , ومن هنا جاءت تسمية المتغير بهذا الاسم لأنك تقوم بتغيير محتواه في أي وقت أردت ولكن يبقى اسمه كما هو. أما صندوق B فهو صندوق مغلق ولا يمكن التغيير على محتواه , هنا الصندوق B يمثل الثابت (Constant) والكُرة الموجودة فيه هي قيمة ثابتة ولا يمكن تغييرها.


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

Python:
message = "Welcome to Shell!"

print(message)

message = "Computer and Network Security"
print(message)
وهذه المخرجات التي تظهر لنا عند تنفيذ البرنامج أعلاه :
Python:
Welcome to Shell!
Computer and Network Security
قمنا بإضافة متغير باسم message وكل متغير يرتبط بقيمة معينة وهي البيانات التي تم تخزينها بداخله, وفي برنامجنا القيمة هي عبارة عن النص “Welcome to Shell” وهنا تعمل المتغيرات على زيادة عمل المفسّر (Python Interpreter) بحيث أنه عندما يقوم بقراءة أول سطر وتنفيذه فإنه يربط المتغير message مع القيمة Welcome to Shell , وعندما يصل إلى السطر الثاني يقوم بطباعة القيمة المرتبطة بالمتغير على الشاشة.
وكما علمنا أنه يمكن التعديل على قيمة المتغير ففي السطر الثالث قمنا بتعديل البيانات المخزنة إلى " Computer And Network Security " وأصبحت هذه القيمة هي القيمة الجديدة المخزنة في المتغير message ثم قمنا بطباعته.


ماذا يحدث عند تنفيذ هذا البرنامج ؟
عند فتح الملف الذي قمنا بتسميته task_1.py , حيث يشير الإمتداد (py) إلى أن هذا الملف هو عبارة عن برنامج بايثون , يقوم المحرر بتشغيل الملف بواسطة المفسّر الخاص ببايثون (python interpreter) الذي يقرأ البرنامج ويحدد معنى كل كلمة موجودة فيه , على سبيل المثال عندما يقرأ المفسّر كلمة print متبوعة بأقواس (parentheses) يقوم بطباعة ما داخل الأقواس على الشاشة.

  • عند استخدام المتغيرات في بايثون يجب علينا الإلتزام في بعض القواعد والإرشادات المهمة , حيث أن كسر هذه القواعد يعمل على حدوث بعض الأخطاء (errors) وتساعدك هذه التعليمات أيضًا على كتابة تعليمات برمجية يسهل قراءتها وفهمها , هذه القواعد هي :
  1. أن يحتوي اسم المتغير على حروف أو أرقام أو الشرطة السفلية ( _ ) و أن لا يحتوي على أي إشارة أو رمز حسابي مثل (+ , - , * , / , % , # , $ , … ).
  2. أن يبدأ اسم المتغير بحروف أو بالشرطة السفلية ( _ ) على أن لا يبدأ برقم .
  3. أن لا يحتوى اسم المتغير على فراغ ، مثلًا لا يصح كتابة اسم متغير بهذه الطريقة ) (user name لكن إذا كان اسم المتغير يتكون من كلمتين فيمكن الفصل بينهم بالشرطة السفلية هكذا (user_name) أو أن تقوم بكتابة أول حرف من الكلمة الثانية بحرف كبير دون الحاجة الى الفصل بينهم (userName) وتسمى خاصية الكتابة هذه (camel case) .
  4. تجنب استخدام كلمات مفتاحية أو أسماء دّوال خاصة بلغة بايثون ، كأن تستخدم مثلًا print كإسم للمتغير الخاص بك لأن كلمة print هي اسم لدّالة في بايثون خاصة بالطباعة . وفي ما يلي الكلمات المفتاحية وأسماء الدّوال الخاصة ببياثون :
5. لغة بايثون حساسة لحالة الحرف (sensitive case) فكن على حذر عند كتابتك لإسم المتغير لأن الأحرف الكبيرة تختلف عن الأحرف الصغيرة ، مثلًا لنقل أنك أردت تسمية متغير بإسم Ahmad فلا يجوز استخدام هذا الإسم هكذا ahmad لأن مفسر بايثون سوف يفهم أن ahmad متغير آخر يختلف عن Ahmad ويعطيك أن هناك خطأ .
انتبه عند استخدام الحرفين (l) والحرف (O) , فعند قراءة البرنامج في وقت لاحق قد تظن أنها (1,0).
  • يستحب أن تكون أسماء المتغيرات مفهومة (وصّفيّة) مثلًا إذا أردنا كتابة اسم متغير يخزن أسماء طلاب ،فالإسم (student_name) أفضل من تسمية (s_n) ، ولا يستحب أن يكون اسم المتغير طويل إذا ما كان باستطاعتك اختصاره، مثل: name_length أفضل من تسمية length_of_persons_name

كما تحدثنا أن من ميزات لغة بايثون أنها واضحة وتُسهّل عليك اكتشاف الأخطاء والتعامل معها ، وسبب تميّز لغة بايثون بهذه الميزة على غيرها من اللغات توفر تتبّع للبرنامج( Traceback ) هو عبارة عن سجل للمكان الذي يواجه فيه المفسر مشكلة عند محاولة تنفيذ التعليمات البرمجية الخاصة بك .
Python:
message = "Welcome to Shell!"
print(mesage)
وهذه المخرجات التي تظهر لنا عند تنفيذ البرنامج :
Python:
Traceback (most recent call last):
  File "c:\Users\THINK\Desktop\python_proj\task1\task_1.py", line 2, in <module>
    print(mesage)
          ^^^^^^
NameError: name 'mesage' is not defined. Did you mean: 'message'?
في هذا المثال هناك خطأ في كتابة اسم المتغير message داخل جملة الطباعة ، هنا بايثون استخدم طريقة التتبع في حل المشكلة حيث أن هذه الطريقة تحدد مكان الخطأ ( في أي ملف وفي أي سطر ) ويشير إلى الخطأ أيضًا بوضع هذه الإشارة(^^^) تحت الخطأ وأيضًا يخبرك بأن المتغير mesage غيرموجود ويعطي توقّع بأنك تقصد المتغير message، فيسألك هل تقصد message ؟
هذه الطريقة في التعامل مع الأخطاء تسهل عليك كثيراً كتابة البرامج بهذه اللغة وهذا يعود لمفسر بايثون (Interpreter) الذي يبذل قُصارى جهده لمساعدتك في معرفة مكان المشكلة وماهيّتها.


  • لا تستطيع بايثون تحديد اسم المتغير المقدم بالتالي عادًة مايعني خطأ اسم المتغير أننا إما نسينا تعيين قيمة المتغير أو خطأ إملائي , فلغة بايثون كباقي لغات البرمجة صارمة لكنها تتجاهل التهجئة الجيدة والسيئة.
    هذا الخطأ يسمى syntax error حيث يكون الخطأ ناتج عن كتابة غير صحيحة للأمر البرمجي أو إلى أسماء المتغيرات ويحدث لأن بايثون لا تتعرف على جزء من البرنامج باعتباره كود بايثون صحيح.
أثناء كتابتك لبرنامجك يقوم المحرر بتسليط الضوء على أجزاء مختلفة من البرنامج بعدة طرق. على سبيل المثال يتعرف المحرر على كلمة print على أنها اسم دّالة(function) ويعرض هذه الكلمة بلون واحد, ويدرك أيضًا أن " Welcome to Shell " ليست شيفرة برمجية (code) ويعرض هذه العبارة بلون مختلف. تسمى هذه الميّزة بإبراز بناء الجملة Syntex highlighting وهي مفيدة جداً في كتابة البرنامج.


تدريب : قم بإنشاء متغير وخزّن فيه نص معين ثم قم بطباعته , وبعد ذلك قم بالتعديل على قيمة هذا المتغير وقم بطباعة القيمة الجديدة.



2.التعليقات (Comments) :
  • في بعض الأحيان قد تحتاج إلى وضع ملاحظات معينة مكتوبة بلغتك الخاصة تقوم بتذكيرك بمقصدك من كتابة سطر معين عند قراءة البرنامج في وقت لاحق وهذا الأمر قد تحتاجه بشكل ملحوظ عند كتابة برنامج يحتوى على معلومات كثيرة وعدد كبير من الأسطر وأيضًا عند تعديل شخص غيرك على برنامجك.
  • يطلق على هذة الملاحظات اسم Comments تكون مكتوبة بلغتك الخاصة اي أنها لا تحتاج إلى أي قاعدة من قواعد كتابة البرنامج بلغة بايثون ، ما عليك سوا وضع علامة التجزئة (#) ومن ثم البدء بكتابة ملاحظتك في أي مكان تريدة من البرنامج كما في المثال التالي :​
Python:
# Welcome message
message = "Welcome to Shell!"
print(message)

# Update message
message = "Computer and Network Security"
print(message)


هكذا نكون قد وصلّنا إلى نهاية درسنا
دمتم بحفظ الله ورعايته
بارك الله فيك على هذا الطرح الرائع والله يعطيك الف عافيه
ننتظر جديدك دايماً في هذه الدورة
 
  • Love
التفاعلات: RTH

آخر المشاركات

فانوس

رمضان
عودة
أعلى