مقدمة في التعامل مع الملفات في بايثون
في البرامج المعتادة ، جميع البيانات تُحذف عند إغلاق البرنامج. لكن أحيانًا نرغب في حفظ المعلومات داخل ملف لقراءتها لاحقًا. هنا يأتي دور التعامل مع الملفات في بايثون (File Handling). الملف هو مكان نخزن فيه البيانات مثل النصوص أو الأرقام أو النتائج. قد يكون الملف بسيطًا مثل notes.txt أو ملف بيانات أكبر مثل data.csv. لنفتح ملفًا في بايثون نستخدم الدالة open()، ونرسل لها اسم الملف ووضع الفتح , أنواع أوضاع الفتح هي: r لقراءة الملفw للكتابة واستبدال المحتوى، a لإضافة محتوى جديد في نهاية الملف.
لقراءة محتوى ملف نكتب الكود كما في الصورة في هذا المثال، فتحنا الملف data.txt، ثم قرأناه باستخدام read() ، وطبعنا المحتوى، وأغلقنا الملف باستخدام close() .يجب إغلاق الملف دائمًا لأن تركه مفتوحًا قد يسبب فقدان البيانات أو ظهور أخطاء. وهناك طريقة أسهل لإغلاق الملف تلقائيًا دون كتابة close()، وهي باستخدام العبارة with كما في المثال
قراءة الملفات في بايثون
في الدرس السابق تعلمنا كيفية فتح الملف وقراءته مرة واحدة باستخدام .read(). لكن أحيانًا نحتاج قراءة الملف بطريقة مختلفة، مثل قراءة سطر واحد فقط أو سطرًا تلو الآخر. يمكن أيضًا الحصول على كل الأسطر في شكل قائم أولًا، قراءة كل المحتوى مرة واحدة: هذه الطريقة تقرأ بالكامل وتضعه في متغير واحد.
with open("data.txt", "r") as file:
content = file.read()
print(content)
ثانيًا، قراءة سطر واحد فقط: استخدم .readline() لقراءة السطر التالي في كل مرة تستدعيها.
with open("data.txt", "r") as file:
first_line = file.readline()
print(first_line)
ثالثًا، قراءة جميع الأسطر كقائمة: باستخدام .readlines() تحصل على قائمة تحتوي على كل الأسطر في الملف.
with open("data.txt", "r") as file:
lines = file.readlines()
print(lines)
الكتابة إلى الملفات وإنشاؤها في بايثون
في بايثون، يمكنك إنشاء ملفات جديدة وكتابة النصوص أو البيانات فيها باستخدام أوامر بسيطة مثل open() مع الوضع 'w' أو 'a'. يمكن قراءة المحتوى لاحقًا أو تحديثه حسب الحاجة، ما يجعل إدارة البيانات سهلة ومرنة. الكتابة إلى الملفات أساسية لحفظ المعلومات بشكل دائم خارج البرنامج