سنضيف ثلاث تحسينات مهمة لبرنامج الملاحظات.
أولاً، نتحقق من وجود الملف قبل القراءة. إذا لم يكن موجودًا، نقوم بإنشائه تلقائيًا. نضيف عنوانًا في أول السطر الجديد.
import os
NOTES_PATH = "notes.txt"
if not os.path.exists(NOTES_PATH):
with open(NOTES_PATH, "w", encoding="utf-8") as f:
f.write("=== My Notes ===n")
print("Notes file created.")
ثانيًا، نضيف ملاحظة جديدة ثم نعرض جميع الملاحظات للمستخدم.
نستخدم وضع الإضافة "a" للحفاظ على الملاحظات القديمة. نقرأ الملف كاملًا ونطبعه بعد كل إضافة.
note = input("Write your note: ")
with open("notes.txt", "a", encoding="utf-8") as f:
f.write(note + "n")
print("Note saved!n")
with open("notes.txt", "r", encoding="utf-8") as f:
print("🗒️ All Notes:n" + f.read())
ثالثًا، نضيف معالجة الأخطاء لحماية البرنامج.
نلتقط الأخطاء مثل FileNotFoundError وPermissionError. هذا يمنع توقف البرنامج إذا اختفى الملف أو كانت الصلاحيات غير مناسبة.
try:
with open("notes.txt", "r", encoding="utf-8") as f:
print("🗒️ All Notes:n" + f.read())
except FileNotFoundError:
print("No notes found yet. Add your first note!")
except PermissionError:
print("Cannot access the file. Check file permissions.")