شاركنا بعملوماتك
#عائله بايثون
مفهوم المتغيرات
المتغيرات ( variables ) عبارة عن أماكن يتم حجزها في الذاكرة بهدف تخزين بيانات فيها أثناء تشغيل البرنامج.
في بايثون, المبرمج غير مسؤول عن تحديد أنواع المتغيرات التي يعرّفها في برنامجه.
فعلياً, عندما تقوم بتعريف متغير و تضع فيه أي قيمة, سيقوم مفسّر لغة بايثون بتحديد نوع هذا المتغير بناءاً على القيمة التي أسندتها إليه بشكل تلقائي وقت التشغيل.
في بايثون يجب إسناد قيمة إلى المتغير أثناء تعريفه.
المثال الأول
سنحصل على النتيجة التالية عند التشغيل.
في بايثون يمكن تعريف عدة متغيرات متساوية في القيمة في وقت واحد.
المثال الثاني
سنحصل على النتيجة التالية عند التشغيل.
معرفة نوع المتغير
لمعرفة نوع أي متغير يمكنك إستخدام الدالة
.تذكر: نوع المتغير في بايثون غير ثابت لأنه يتغير بشكل تلقائي على حسب نوع القيمة التي يتم تخزينها فيه.
مثال
سنحصل على النتيجة التالية عند التشغيل.
أنواع المتغيرات في بايثون
تنقسم أنواع المتغيرات في بايثون إلى 7 أنواع أساسية و هي:
- أرقام (Numbers).
- نصوص (Strings).
- منطقية (Booleans).
- مصفوفات ليس لها حجم ثابت يقال لها Lists.
- مصفوفات حجمها و قيمها ثابتة, و غير قابلة للتغيير يقال لها Tuples.
- مصفوفات ليس لها حجم ثابت, و لا يمكن حذف قيمها, و يمكن إضافة قيم جديدة فيها يقال لها Sets.
- جداول تخزن البيانات فيها بطريقة مفايتح (Keys) و قيم (Values) يقال لها Dictionaries.
الأرقام
عند تعريف متغير و تخزين رقم فيه, فإن مفسّر لغة بايثون سيقوم بشكل تلقائي بتحديد نوع هذا المتغير بناءاً على نوع القيمة الرقمية التي تم إسنادها إليه.
فإذا وضعت فيه عدد صحيح, يصبح نوعه
أنواع الأرقام في بايثون تنقسم إلى 3 أنواع كما في الجدول التالي.
النوع | إستخدامه | مثال |
---|---|---|
يستخدم لتخزين أعداد صحيحة. | ||
يستخدم لتخزين أعداد تحتوي على فاصلة عشرية. | ||
يستخدم لتخزين أعداد مركبة (Complex Number) و التي غالباً ما يحتاجها المهندسون عند إجراء عمليات حاسبية معقدة. ملاحظة: هنا يجب وضع الحرف أو مباشرةً بعد العدد حتى يعرف مفسّر بايثون أنك تقصد عدد مركب و ليس عدد عادي. |
في المثال التالي قمنا بتعريف ثلاث متغيرات و كل متغير وضعنا فيه قيمة رقمية مختلفة في النوع و القيمة. بعدها قمنا بعرض نوع كل متغير منهم.
مثال
سنحصل على النتيجة التالية عند التشغيل.
ملاحظة
صحيح أن مفسّر بايثون يقوم بتحديد أنواع القيم بشكل تلقائي عنك لكن هذا لا يعني أنك غير قادر على تحويل أنواع الأرقام إلى النوع الذي يناسبك.
ستتعرف على دوال خاصة للتعامل مع الأرقام و ستتعلم طريقة تحويل أنواع الأرقام في درس خاص لاحقاً في هذه الدورة.
النصوص
لتعريف نص في بايثون نستخدم الرمز
أو الرمز أو الرمز .هل يوجد فرق بين هذه الرموز؟
بالنسبة للرمز
و الرمز فإنه لا يوجد أي فرق بينهما. و يمكن إستخدام أي واحد منهما لتعريف نص يتألف من سطر واحد.بالنسبة للرمز و الرمز فإنه لا يوجد أي فرق بينهما. و يمكن إستخدام أي واحد منهما لتعريف نص كبير يتألف من عدة أسطر.
في المثال التالي قمنا بتعريف ثلاث متغيرات تحتوي على قيم نصية. لاحظ أننا قمنا بتعريف كل متغيير بواسطة رمز مختلف.
المثال الأول
سنحصل على النتيجة التالية عند التشغيل.
في المثال التالي قمنا بتعريف نص يحتوي على نفس الرموز التي تستخدم لتعريف النصوص.
المثال الثاني
سنحصل على النتيجة التالية عند التشغيل.
ملاحظة
هناك أساليب و دوال خاصة للتعامل مع النصوص سنشرحها في درس خاص لاحقاً في هذه الدورة.
القيم المنطقية
النوع
يستخدم في العادة عند وضع شروط منطقية أو لمعرفة ما إذا تم تنفيذ أمر معين بنجاح أم لا.عند إسناد القيمة أو القيمة إلى المتغير فإنه يصبح من النوع .
معلومة تقنية
في الواقع القيمة
تساوي 1 و القيمة تساوي 0.في بايثون يفضل إستخدام الصفر و الواحد بدلاً من إستخدام القيم المحجوزة و عند التشييك على قيمة المتغير أو على ما سترجعه الدالة.
في المثال التالي قمنا بتعريف متغير إسمه
و أعطيناه القيمة ثم إستخدمناه في وضع شرط.مثال
سنحصل على النتيجة التالية عند التشغيل.
ملاحظة
بدل الأمر
كان يمكنك كتابة أو كتابة فقط و الحصول على نفس النتيجة.تخزين البيانات في List
الـ List عبارة عن مصفوفة حجمها غير ثابت و يمكنها تخزين قيم من مختلف الأنواع في وقت واحد.
في بايثون نستخدم الرمز
في المثال التالي قمنا بتعريف 4 مصفوفات.
المثال الأول
في المثال التالي قمنا بتعريف مصفوفة تتألف من 4 عناصر, ثم قمنا بإعطائها 4 قيم, ثم قمنا بإضافة عنصر جديد عليها, ثم عرضنا قيمها و عدد عناصرها.
المثال الثاني
سنحصل على النتيجة التالية عند التشغيل.
ملاحظة
ستتعرف على دوال خاصة للتعامل مع الـ Lists و سبب إستخدامهم و ستتعلم طرق كثيرة للتعامل معهم في درس خاص لاحقاً في هذه الدورة.
تخزين البيانات في Tuple
الـ Tuple عبارة عن مصفوفة حجمها ثابت و قيمها غير قابلة للتغيير و يمكنها تخزين قيم من مختلف الأنواع في وقت واحد.
في بايثون نستخدم الرمز
في المثال التالي قمنا بتعريف 4 مصفوفات.
المثال الأول
في المثال التالي قمنا بتعريف مصفوفة تتألف من 4 عناصر ثابتة, ثم عرضنا قيمها و عدد عناصرها.
المثال الثاني
سنحصل على النتيجة التالية عند التشغيل.
ملاحظة
ستتعرف على دوال خاصة للتعامل مع الـ Tuples و سبب إستخدامهم و ستتعلم طرق كثيرة للتعامل معهم في درس خاص لاحقاً في هذه الدورة.
تخزين البيانات في Set
الـ Set عبارة عن مصفوفة ليس لها حجم ثابت و قيمها غير قابلة للتغيير و يمكنها تخزين قيم من مختلف الأنواع في وقت واحد.
في بايثون نستخدم الرمز
في مصفوفات الـ Set يتم تخزين البيانات بشكل عشوائي و ليس بالترتيب كما تم إدخالهم, و السبب في أنه في هذا النوع من المصفوفات لا يتم إعطاء رقم Index خاص لكل عنصر.
لهذا السبب أيضاً, لا يمكنك الوصول لعنصر محدد في Set بشكل مباشر لأنه في الأساس لا يملك رقم Index.
في المثال التالي قمنا بتعريف 4 مصفوفات.
المثال الأول
في المثال التالي قمنا بتعريف مصفوفة تتألف من 4 عناصر ثابتة, ثم عرضنا قيمها و عدد عناصرها.
المثال الثاني
سنحصل على النتيجة التالية عند التشغيل.
ملاحظة
ستتعرف على دوال خاصة للتعامل مع الـ Sets و سبب إستخدامهم و ستتعلم طرق كثيرة للتعامل معهم في درس خاص لاحقاً في هذه الدورة.
تخزين البيانات في Dictionary
عند إستخدام الـ List أو Tuple فإنك تتعامل مع عناصرهم من خلال أرقام الـ Indices.
فكرة الـ Dictionary هي وضع مفتاح لكل قيمة. عندها تصل لقيمة كل عنصر موجود من خلال المفتاح الخاص فيه.
إذاً الـ Dictionary عبارة جدول تخزن فيه البيانات بطريقة مفاتيح (Keys) و قيم (Values).
بالنسبة لنوع البيانات التي تخزنها بداخل الـ Dictionary فعندك الحرية في تخزين مفاتيح و قيم من أي نوع تريد.
في بايثون نستخدم الرمز
لتعريف Dictionary.في المثال التالي قمنا بتعريف Dictionary يتألف من 5 عناصر, ثم عرضنا قيمة العنصر الثالث من خلال المفتاح الخاص فيه.
مثال
سنحصل على النتيجة التالية عند التشغيل.
ملاحظة
ستتعرف على دوال خاصة للتعامل مع الـ Dictionaries و سبب إستخدامهم و ستتعلم طرق كثيرة للتعامل معهم في درس خاص لاحقاً في هذه الدورة.
هل كل شيء في بايثون عبارة عن كائن؟
الجواب هو نعم. رغم أننا نقول متغير للكائن الذي يحتوي على قيمة رقمية أو نصية, إلا أنه في الواقع عبارة عن كائن و ليس متغير عادي كما يوجد في لغات البرمجة الأخرى.
في حال كنت تستخدم برنامج PyCharm تلاحظ أنه عند كتابة إسم أي متغير و وضع نقطة مباشرةً بعده, فإنه يظهر لك أنه يمكن إستدعاء دوال أو خصائص موجودة فيه!
لاحظ الصورة التالية.
إذاً لو لم تكن هذه المتغيرات في الحقيقة عبارة عن كائنات لما ظهر لنا أي شيء عند وضع النقطة.
تعليقات
إرسال تعليق