مشاهدة دروس بايثون وحدها لا تكفي لتعلم البرمجة. قد تفهم الشرح أثناء قراءة المقال أو مشاهدة الفيديو، لكن عندما تفتح محرر الكود وتبدأ من الصفر، تكتشف أنك تحتاج إلى تدريب عملي. لذلك تعد تمارين بايثون للمبتدئين من أفضل الطرق لتحويل المعلومات إلى مهارة حقيقية.
في هذا المقال من بايثون العرب ستجد مجموعة تمارين Python مرتبة من الأسهل إلى الأصعب، مع فصل الحلول في قسم مستقل حتى تحاول بنفسك أولًا. هذه الطريقة أفضل من قراءة الحل مباشرة، لأنها تجعلك تفكر وتكتب وتخطئ ثم تصحح.
إذا كنت تريد تعلم بايثون من الصفر، فابدأ بهذه التمارين البسيطة على print و input والمتغيرات والشروط والحلقات والقوائم والدوال، ثم راجع الحلول في نهاية المقال.
{getToc} $title={محتوى المقال}
{alertInfo} حاول حل التمارين بنفسك أولًا، ثم انتقل إلى قسم الحلول. لا تجعل الحل هو أول شيء تقرأه.
لماذا تحتاج إلى تمارين بايثون؟
البرمجة مهارة عملية، وليست معلومات تحفظها فقط. مثل التصميم أو الكتابة أو قيادة السيارة، لا يكفي أن تعرف القواعد، بل يجب أن تطبقها أكثر من مرة حتى تصبح سهلة.
تمارين بايثون تساعدك على:
- تثبيت المفاهيم الأساسية بدل نسيانها بسرعة.
- التعود على كتابة الكود من الصفر.
- فهم رسائل الأخطاء بدل الخوف منها.
- التفكير بطريقة برمجية خطوة بخطوة.
- الانتقال من مشاهدة الدروس إلى بناء برامج بسيطة.
المبتدئ الذي يحل تمرينًا صغيرًا كل يوم يتقدم غالبًا أسرع من شخص يشاهد دروسًا كثيرة بدون أن يكتب كودًا بيده.
كيف تستفيد من هذه التمارين؟
حتى تستفيد من المقال، لا تبدأ بقسم الحلول مباشرة. اتبع هذه الطريقة:
- اقرأ التمرين جيدًا.
- اكتب الحل بطريقتك، حتى لو لم تكن متأكدًا.
- شغل الكود وشاهد النتيجة.
- إذا ظهر خطأ، اقرأ رسالة الخطأ بهدوء.
- بعد المحاولة، انتقل إلى قسم الحلول وقارن.
{alertSuccess} ليس شرطًا أن يكون حلك مطابقًا للحل الموجود في المقال. المهم أن يعطي نفس النتيجة وأن تفهم لماذا يعمل.
تمارين بايثون للمبتدئين بدون حلول
في هذا القسم ستجد التمارين فقط بدون حلول. حاول حل كل تمرين بنفسك، وبعد الانتهاء انتقل إلى قسم حلول تمارين بايثون في نهاية المقال.
التمرين 1: طباعة رسالة ترحيب
اكتب برنامجًا يطبع رسالة ترحيب بسيطة على الشاشة، مثل: مرحبا بك في بايثون العرب.
التمرين 2: إدخال اسم المستخدم
اكتب برنامجًا يطلب من المستخدم إدخال اسمه، ثم يطبع رسالة ترحيب تحتوي على الاسم.
التمرين 3: إدخال الاسم والعمر
اكتب برنامجًا يطلب من المستخدم اسمه وعمره، ثم يطبع الاسم والعمر في رسالتين منفصلتين.
التمرين 4: حساب العمر بعد سنة
اكتب برنامجًا يطلب عمر المستخدم، ثم يحسب عمره بعد سنة واحدة ويطبع النتيجة.
التمرين 5: جمع رقمين
اكتب برنامجًا يطلب رقمين من المستخدم، ثم يطبع ناتج جمعهما.
التمرين 6: معرفة نوع البيانات
أنشئ متغيرات تحتوي على نص، رقم صحيح، رقم عشري، وقيمة منطقية، ثم اطبع نوع كل متغير باستخدام type().
التمرين 7: التحقق من العمر
اكتب برنامجًا يطلب عمر المستخدم، فإذا كان عمره 18 أو أكثر يطبع "مسموح بالدخول"، وإلا يطبع "غير مسموح بالدخول".
التمرين 8: تحديد الرقم موجب أم سالب
اكتب برنامجًا يطلب رقمًا من المستخدم، ثم يحدد هل الرقم موجب أم سالب أم يساوي صفر.
التمرين 9: تحديد الرقم زوجي أم فردي
اكتب برنامجًا يطلب رقمًا من المستخدم، ثم يحدد هل الرقم زوجي أم فردي.
التمرين 10: طباعة الأرقام من 1 إلى 10
استخدم حلقة for و range() لطباعة الأرقام من 1 إلى 10.
التمرين 11: جدول ضرب رقم
اكتب برنامجًا يطبع جدول ضرب الرقم 5 من 1 إلى 10.
التمرين 12: حساب مجموع الأرقام من 1 إلى 10
اكتب برنامجًا يستخدم حلقة لحساب مجموع الأرقام من 1 إلى 10، ثم يطبع الناتج.
التمرين 13: طباعة عناصر قائمة
أنشئ قائمة أسماء، ثم استخدم حلقة for لطباعة كل اسم في سطر مستقل.
التمرين 14: حساب عدد عناصر القائمة
أنشئ قائمة مهارات أو أسماء، ثم اطبع عدد عناصرها باستخدام len().
التمرين 15: إضافة عنصر إلى قائمة
أنشئ قائمة مهام، ثم أضف عنصرًا جديدًا إليها باستخدام append().
التمرين 16: حساب مجموع عناصر قائمة
أنشئ قائمة أرقام، ثم احسب مجموع عناصرها باستخدام حلقة for.
التمرين 17: حساب عدد حروف النص
اكتب برنامجًا يحتوي على نص، ثم اطبع عدد حروفه باستخدام len().
التمرين 18: تحويل النص إلى حروف صغيرة
اكتب برنامجًا يحتوي على نص بحروف كبيرة، ثم اطبعه بعد تحويله إلى حروف صغيرة باستخدام lower().
التمرين 19: حساب عدد الكلمات في جملة
اكتب برنامجًا يطلب جملة من المستخدم، ثم يحسب عدد الكلمات الموجودة فيها.
التمرين 20: دالة ترحيب
اكتب دالة باسم say_hello تستقبل اسمًا، ثم تطبع رسالة ترحيب بهذا الاسم.
التمرين 21: دالة تجمع رقمين
اكتب دالة تستقبل رقمين وترجع ناتج جمعهما باستخدام return.
التمرين 22: دالة تتحقق من الرقم الزوجي
اكتب دالة تستقبل رقمًا، ثم ترجع True إذا كان الرقم زوجيًا، و False إذا كان فرديًا.
{alertWarning} لا تنتقل إلى الحلول قبل أن تحاول حل مجموعة من التمارين بنفسك. حتى المحاولة الخاطئة مفيدة جدًا في التعلم.
جدول تمارين بايثون حسب المستوى
| المستوى | نوع التمارين | أمثلة مناسبة |
|---|---|---|
| مبتدئ جدًا | طباعة وإدخال | رسالة ترحيب، إدخال الاسم والعمر |
| مبتدئ | متغيرات وتحويل أنواع | جمع رقمين، حساب العمر بعد سنة |
| متوسط بسيط | شروط | زوجي أو فردي، موجب أو سالب |
| متوسط | حلقات وقوائم | طباعة عناصر قائمة، حساب المجموع |
| بعد الأساسيات | دوال ومشاريع صغيرة | دالة جمع، دالة تحقق، عداد كلمات |
خطة تدريب يومية على تمارين بايثون
إذا أردت التعلم بدون تشتت، خصص وقتًا يوميًا بسيطًا لحل التمارين. نصف ساعة يوميًا مع تطبيق أفضل من ساعات مشاهدة بدون كتابة كود.
| اليوم | ماذا تتدرب؟ | الهدف |
|---|---|---|
| اليوم 1 | print و input | كتابة أول برنامج تفاعلي |
| اليوم 2 | المتغيرات والأرقام | تخزين القيم وإجراء عمليات بسيطة |
| اليوم 3 | الشروط if | اتخاذ قرارات داخل البرنامج |
| اليوم 4 | for و range | تكرار تنفيذ الأوامر |
| اليوم 5 | القوائم Lists | التعامل مع عدة عناصر |
| اليوم 6 | النصوص Strings | معالجة الجمل والكلمات |
| اليوم 7 | الدوال والمراجعة | تنظيم الكود وبناء حلول صغيرة |
حلول تمارين بايثون للمبتدئين
الآن ننتقل إلى الحلول. تذكر أن الحل الموجود هنا ليس الطريقة الوحيدة. في البرمجة قد يوجد أكثر من حل صحيح لنفس التمرين.
حل التمرين 1: طباعة رسالة ترحيب
print("مرحبا بك في بايثون العرب")
حل التمرين 2: إدخال اسم المستخدم
name = input("اكتب اسمك: ")
print("أهلا بك", name)
حل التمرين 3: إدخال الاسم والعمر
name = input("اكتب اسمك: ")
age = input("اكتب عمرك: ")
print("اسمك هو", name)
print("وعمرك هو", age)
حل التمرين 4: حساب العمر بعد سنة
age = input("اكتب عمرك: ")
age = int(age)
print("عمرك بعد سنة سيكون:", age + 1)
{alertInfo} القيمة القادمة من input تكون نصًا، لذلك نستخدم int لتحويل العمر إلى رقم قبل إجراء عملية الجمع.
حل التمرين 5: جمع رقمين
num1 = int(input("اكتب الرقم الأول: "))
num2 = int(input("اكتب الرقم الثاني: "))
total = num1 + num2
print("المجموع هو:", total)
حل التمرين 6: معرفة نوع البيانات
name = "Ahmed"
age = 20
price = 15.5
is_student = True
print(type(name))
print(type(age))
print(type(price))
print(type(is_student))
حل التمرين 7: التحقق من العمر
age = int(input("اكتب عمرك: "))
if age >= 18:
print("مسموح بالدخول")
else:
print("غير مسموح بالدخول")
حل التمرين 8: تحديد الرقم موجب أم سالب
number = int(input("اكتب رقمًا: "))
if number > 0:
print("الرقم موجب")
elif number < 0:
print("الرقم سالب")
else:
print("الرقم صفر")
حل التمرين 9: تحديد الرقم زوجي أم فردي
number = int(input("اكتب رقمًا: "))
if number % 2 == 0:
print("الرقم زوجي")
else:
print("الرقم فردي")
حل التمرين 10: طباعة الأرقام من 1 إلى 10
for i in range(1, 11):
print(i)
حل التمرين 11: جدول ضرب رقم
number = 5
for i in range(1, 11):
print(number, "x", i, "=", number * i)
حل التمرين 12: حساب مجموع الأرقام من 1 إلى 10
total = 0
for i in range(1, 11):
total = total + i
print("المجموع هو:", total)
حل التمرين 13: طباعة عناصر قائمة
names = ["Ali", "Sara", "Omar"]
for name in names:
print(name)
حل التمرين 14: حساب عدد عناصر القائمة
skills = ["Python", "HTML", "CSS"]
print("عدد المهارات:", len(skills))
حل التمرين 15: إضافة عنصر إلى قائمة
tasks = ["تعلم المتغيرات", "حل تمارين"]
tasks.append("مراجعة الأخطاء")
print(tasks)
حل التمرين 16: حساب مجموع عناصر قائمة
numbers = [10, 20, 30, 40]
total = 0
for number in numbers:
total = total + number
print("المجموع:", total)
ويمكن حل نفس التمرين بطريقة أقصر باستخدام sum():
numbers = [10, 20, 30, 40]
print(sum(numbers))
حل التمرين 17: حساب عدد حروف النص
text = "Python"
print(len(text))
حل التمرين 18: تحويل النص إلى حروف صغيرة
text = "PYTHON"
print(text.lower())
حل التمرين 19: حساب عدد الكلمات في جملة
text = input("اكتب جملة: ")
words = text.split()
print("عدد الكلمات:", len(words))
حل التمرين 20: دالة ترحيب
def say_hello(name):
print("أهلا بك", name)
say_hello("Ali")
say_hello("Sara")
حل التمرين 21: دالة تجمع رقمين
def add(a, b):
return a + b
result = add(5, 7)
print(result)
حل التمرين 22: دالة تتحقق من الرقم الزوجي
def is_even(number):
return number % 2 == 0
print(is_even(8))
print(is_even(5))
{alertSuccess} بعد مراجعة الحلول، ارجع إلى التمارين وحاول حلها مرة ثانية بدون النظر إلى الكود.
مشاريع صغيرة بعد حل تمارين بايثون
بعد أن تنهي هذه التمارين، حاول بناء مشروع صغير يجمع أكثر من فكرة. لا تنتظر حتى تتعلم كل شيء، فالمشاريع الصغيرة هي أفضل طريقة لتثبيت الأساسيات.
- برنامج آلة حاسبة بسيطة.
- برنامج حساب عدد الكلمات في نص.
- برنامج تخمين رقم عشوائي.
- برنامج قائمة مهام بسيطة.
- برنامج حساب درجات الطلاب.
- برنامج إدارة قائمة أسماء.
أخطاء شائعة أثناء حل تمارين بايثون
نسخ الحل قبل المحاولة
إذا نسخت الحل مباشرة، ستشعر أنك فهمت، لكن عند أول تمرين جديد ستتوقف. حاول أولًا، ثم راجع الحل.
تجاهل رسائل الخطأ
رسائل الخطأ في Python تساعدك على معرفة المشكلة. اقرأ اسم الخطأ والسطر الذي حدث فيه، وستتعلم مع الوقت كيف تصلح أخطاءك بسرعة.
الانتقال السريع لمواضيع متقدمة
لا تنتقل إلى الذكاء الاصطناعي أو تطوير الويب أو تحليل البيانات قبل فهم الأساسيات. التمارين البسيطة هي التي تبني أساسك.
عدم مراجعة التمارين القديمة
ارجع كل فترة إلى التمارين القديمة، وحاول حلها بدون النظر إلى الحل. هذه الطريقة تكشف لك هل فهمت فعلًا أم أنك كنت تتبع المثال فقط.
أسئلة شائعة
ما أفضل تمارين بايثون للمبتدئين؟
أفضل تمارين بايثون للمبتدئين هي التي تبدأ بالطباعة والإدخال، ثم المتغيرات، ثم الشروط، ثم الحلقات، ثم القوائم والدوال.
هل أحتاج إلى حفظ الحلول؟
لا. الأفضل أن تفهم طريقة التفكير في الحل. مع التكرار ستتذكر الأوامر تلقائيًا لأنك استخدمتها أكثر من مرة.
كم تمرين أحل يوميًا؟
يمكنك حل تمرينين أو ثلاثة يوميًا بتركيز. المهم أن تكتب الكود بيدك وتجرب أكثر من حالة.
هل يمكن تعلم بايثون بالتمارين فقط؟
التمارين مهمة جدًا، لكنها تحتاج إلى شرح بسيط قبلها. الأفضل أن تتعلم المفهوم، ثم تطبقه مباشرة في تمرين.
متى أبدأ المشاريع؟
ابدأ المشاريع الصغيرة بعد فهم المتغيرات والشروط والحلقات والقوائم. لا تنتظر حتى تصبح محترفًا.
روابط مهمة من بايثون العرب
- تعلم بايثون بالعربي من الصفر للمبتدئين
- أوامر بايثون جاهزة للمبتدئين
- تشغيل بايثون أون لاين بدون تثبيت
- بايثون بالمثال: حساب مجموع عناصر List في Python
- شرح القوائم Lists في Python للمبتدئين
مصادر خارجية مفيدة
الخلاصة
تمارين بايثون هي الجسر بين فهم الشرح والقدرة الحقيقية على كتابة البرامج. ابدأ بالتمارين السهلة، حاول بنفسك، ثم راجع الحلول بعد المحاولة.
لا تستعجل الوصول إلى المواضيع المتقدمة. إذا بنيت أساسًا قويًا من خلال التمارين اليومية، ستصبح كتابة الكود أسهل، وستكون جاهزًا للانتقال إلى مشاريع Python بسيطة ثم أكبر.
{alertSuccess} القاعدة الذهبية: تمرين صغير تكتبه بيدك أفضل من مشاهدة ساعة كاملة لكود يكتبه شخص آخر.