🧱 أنواع البيانات في بايثون: أساس بناء أي برنامج! ✨

تخيل أنك تريد بناء منزل. قبل البدء، تحتاج لمعرفة أنواع المواد المتاحة لك: هل ستستخدم طوباً؟ خشباً؟ إسمنتاً؟ البرمجة تشبه ذلك تماماً! فلكي تبني برنامجاً، تحتاج أولاً لفهم أنواع البيانات (Data Types) التي يمكنك تخزينها والتعامل معها.

في هذا الدرس، سنتعرف على أهم أنواع البيانات الأساسية في بايثون، وكيف نميز بينها، ولماذا هي مهمة جداً. هيا بنا نبدأ! 🚀


📝 ما هي أنواع البيانات (Data Types)؟

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

على سبيل المثال، يمكنك جمع رقمين، لكن لا يمكنك جمع نصين بنفس الطريقة! معرفة النوع تمنع حدوث أخطاء.


🔤 النوع النصي (String - str)

النوع str (مختصر String) يستخدم لتمثيل النصوص. يمكن أن يكون النص حرفاً واحداً، كلمة، جملة، أو حتى فقرة كاملة. نضع النص دائماً بين علامتي اقتباس، إما مفردة ' ' أو مزدوجة " ".

مثال عملي على النصوص:

# تخزين أسماء في متغيرات من نوع نصي (String)
name = "أحمد"
city = 'الرياض'
greeting = "مرحباً بالعالم!"

print(name)      # سيطبع: أحمد
print(city)      # سيطبع: الرياض
print(greeting)  # سيطبع: مرحباً بالعالم!

# يمكن جمع (ربط) نصوص باستخدام علامة +
full_greeting = "أهلاً، " + name + "!"
print(full_greeting)  # سيطبع: أهلاً، أحمد!

💡 ملاحظة: حتى الأرقام داخل علامات الاقتباس تعتبر نصوصاً! "123" هي نص، وليس رقماً يمكن إجراء عمليات حسابية عليه.


🔢 الأنواع الرقمية (Numeric Types)

تتعامل بايثون مع الأرقام من خلال نوعين رئيسيين:

  1. الأعداد الصحيحة (int): هي أعداد كاملة (بدون فاصلة عشرية). مثل: 5، -20، 1000.
  2. الأعداد العشرية (float): هي أعداد تحتوي على فاصلة عشرية. مثل: 3.14، -0.5، 2.0.

مثال عملي على الأرقام:

# أعداد صحيحة (int)
age = 25
students_count = 40

# أعداد عشرية (float)
price = 99.99
temperature = 36.5

# إجراء عمليات حسابية
sum = age + 10  # 25 + 10 = 35
total = price * 2  # 99.99 * 2 = 199.98

print(sum)   # سيطبع: 35
print(total) # سيطبع: 199.98

⚖️ النوع المنطقي (Boolean - bool)

هذا هو أبسط نوع! النوع bool يمكن أن يأخذ واحدة من قيمتين فقط:

  • True (صح) ➡️ تمثل الحالة "نعم" أو "صحيح".
  • False (خطأ) ➡️ تمثل الحالة "لا" أو "خطأ".

يأتي هذا النوع من عالم المنطق والتفاضل، وسنستخدمه كثيراً عندما نتعلم اتخاذ القرارات في البرامج (مثل: إذا كان الطالب ناجحاً، افعل كذا...).

مثال عملي على القيم المنطقية:

# تخزين قيم منطقية
is_online = True
is_raining = False
is_adult = age >= 18  # إذا كان العمر أكبر أو يساوي 18، ستكون النتيجة True

print(is_online)  # سيطبع: True
print(is_raining) # سيطبع: False

🔍 كيف أعرف نوع بيانات متغير؟ دالة type()

قد تنسى أو تتشابه عليك أنواع البيانات. لحسن الحظ، تقدم بايثون الدالة السحرية type() التي تخبرك بنوع أي قيمة تضعها بداخلها.

مثال عملي على استخدام type():

# التحقق من أنواع البيانات المختلفة
print(type("Codex"))  # سيطبع: <class 'str'>
print(type(42))        # سيطبع: <class 'int'>
print(type(3.14))      # سيطبع: <class 'float'>
print(type(True))      # سيطبع: <class 'bool'>

# التحقق من نوع متغير
my_variable = 100
print(type(my_variable))  # سيطبع: <class 'int'>

🎯 ملخص سريع لأنواع البيانات الأساسية

النوع في بايثون الاسم بالإنجليزية يمثل مثال
str String نصوص وأحرف "أهلًا"، 'Python'
int Integer أعداد صحيحة 10، -5، 0
float Float أعداد عشرية 2.5، -3.14، 0.0
bool Boolean قيم منطقية True، False