في بايثون، يمكننا التعامل مع الملفات (مثل ملفات .txt) باستخدام الدوال المدمجة مثل open() لقراءة أو كتابة الملفات.
📘 1. فتح ملف وقراءته:
# فتح الملف وقراءته
file = open("example.txt", "r", encoding="utf-8")
content = file.read()
print(content)
file.close()
"r"تعني: وضع القراءة.encoding="utf-8"مهم إذا كان الملف يحتوي على نص عربي.read()تقرأ كل محتوى الملف دفعة واحدة.
📘 2. كتابة ملف (إنشاء ملف جديد أو الكتابة فوق ملف موجود):
file = open("newfile.txt", "w", encoding="utf-8")
file.write("مرحبًا بك في تعلم بايثون!")
file.close()
"w"تعني: وضع الكتابة. سيُحذف أي محتوى قديم في الملف.write()تضيف محتوى إلى الملف.
📘 3. إضافة محتوى لملف موجود (Append):
file = open("newfile.txt", "a", encoding="utf-8")
file.write("\nسطر جديد تم إضافته.")
file.close()
"a"تعني: إلحاق (لن يحذف المحتوى القديم بل يضيف عليه).
📘 4. استخدام with (أفضل ممارسة):
with open("example.txt", "r", encoding="utf-8") as file:
content = file.read()
print(content)
withتفتح الملف وتُغلقه تلقائيًا بعد الانتهاء.
💡 ملاحظات مهمة:
- تأكد من أن الملف موجود في نفس المجلد الذي تعمل فيه، أو استخدم المسار الكامل.
- التعامل مع الملفات ضروري في تطبيقات مثل: حفظ بيانات المستخدم، قراءة الإعدادات، كتابة تقارير... إلخ.
📝 التمرين:
أنشئ برنامجًا يقوم بالتالي:
- ينشئ ملفًا جديدًا باسم
my_notes.txt. - يطلب من المستخدم إدخال 3 ملاحظات واحدة تلو الأخرى.
- يكتب هذه الملاحظات في الملف، كل ملاحظة في سطر جديد.
- ثم يقرأ الملف ويعرض محتواه في النهاية.
✅ الحل:
# 1. إنشاء الملف وكتابة الملاحظات
with open("my_notes.txt", "w", encoding="utf-8") as file:
for i in range(1, 4):
note = input(f"أدخل الملاحظة رقم {i}: ")
file.write(note + "\n")
# 2. قراءة الملف وعرض محتواه
print("\n📄 محتوى الملف my_notes.txt:")
with open("my_notes.txt", "r", encoding="utf-8") as file:
content = file.read()
print(content)
🧪 مثال على تشغيل البرنامج:
أدخل الملاحظة رقم 1: تعلمت التعامل مع الملفات
أدخل الملاحظة رقم 2: استخدمت with و open
أدخل الملاحظة رقم 3: انتهيت من تمرين رائع
📄 محتوى الملف my_notes.txt:
تعلمت التعامل مع الملفات
استخدمت with و open
انتهيت من تمرين رائع

