بايثون: التعامل مع السلاسل النصية والملفات
تعد السلاسل النصية (Strings) والملفات (Files) من المفاهيم الأساسية في لغة البرمجة بايثون (Python). تقدم بايثون مجموعة غنية من الدوال والتعليمات للتعامل مع النصوص وقراءة وكتابة الملفات بكفاءة.
السلاسل النصية في بايثون
السلاسل النصية هي تسلسل من المحارف (Caractères) وتحاط بعلامتي اقتباس مفردة أو مزدوجة. السلاسل في بايثون غير قابلة للتعديل (Immutable).
أهم دوال التعامل مع السلاسل
- len(s): إرجاع طول السلسلة (عدد المحارف).
- s.upper(): تحويل جميع الأحرف إلى كبيرة (Majuscules).
- s.lower(): تحويل جميع الأحرف إلى صغيرة (Minuscules).
- s.strip(): إزالة المسافات البيضاء من بداية ونهاية السلسلة.
- s.split(sep): تقسيم السلسلة إلى قائمة باستخدام فاصل محدد.
- s.join(list): دمج قائمة من السلاسل في سلسلة واحدة باستخدام فاصل.
- s.find(sub): إرجاع موقع أول ظهور لنص فرعي (أو -1 إذا لم يوجد).
- s.replace(old, new): استبدال نص فرعي بآخر.
- s.startswith(prefix): التحقق مما إذا كانت السلسلة تبدأ بنص معين.
أمثلة عملية
# مثال 1: التعامل مع سلسلة نصية
texte = " مرحباً بكم في درس بايثون "
print(len(texte)) # 35
print(texte.strip()) # حذف المسافات
print(texte.upper()) # تحويل إلى أحرف كبيرة
# مثال 2: تقسيم ودمج السلاسل
email = "user@example.com"
parties = email.split('@')
print(parties[0]) # user
print(parties[1]) # example.com
# مثال 3: البحث في السلسلة
phrase = "أنا أتعلم لغة بايثون"
if "بايثون" in phrase:
print("وجدت الكلمة")
التعامل مع الملفات
تستخدم الدالة open() لفتح ملف وتقبل معاملين: اسم الملف ووضع الفتح (r للقراءة، w للكتابة، a للإضافة).
قراءة الملفات
# قراءة الملف كاملاً
with open("data.txt", "r", encoding="utf-8") as f:
contenu = f.read()
print(contenu)
# قراءة سطر سطر
with open("data.txt", "r", encoding="utf-8") as f:
for ligne in f:
print(ligne.strip())
كتابة الملفات
# كتابة إلى ملف (مسح المحتوى القديم)
with open("output.txt", "w", encoding="utf-8") as f:
f.write("السطر الأولn")
f.write("السطر الثانيn")
# إضافة إلى ملف
with open("output.txt", "a", encoding="utf-8") as f:
f.write("سطر مضافn")
تمارين تطبيقية
التمرين 1: اكتب برنامج بايثون يقرأ ملفاً نصياً ويحسب عدد الكلمات فيه.
التمرين 2: اكتب دالة تأخذ سلسلة نصية وترجعها مقلوبة (بدون استخدام الدوال الجاهزة).
التمرين 3: اكتب برنامجاً يقرأ ملفاً يحتوي على أسماء الطلاب وعلاماتهم (سطر لكل طالب: الاسم، العلامة) ويحسب المعدل العام.
للمزيد من المعلومات، راجع درس الهندسة الوراثية والطفرات ودرس المكثفات الكهربائية.
📍 دروس مشابهة
- الإعلام الآلي — لغة C: المصفوفات ثنائية البعد — الثانية ثانوي (شعب علمية) — بكالوريا — المنهاج الجزائري
- الإعلام الآلي — HTML5: إدراج الوسائط المتعددة (الصوت والفيديو) — الثانية ثانوي (شعب علمية) — بكالوريا — المنهاج الجزائري
مدونة التربية و التعليم في الجزائر – دروس، فروض، نتائج امتحانات مدونة التربية والتعليم في الجزائر | تحضير الدروس، فروض واختبارات، نتائج البكالوريا وBEM، مسابقات التوظيف، والتوجيه المدرسي للطلاب وأولياء الأمور.