في حين تُستخدم البرامج غالبًا لإنشاء الملفات، إلا أن هناك أوقاتًا يحتاج فيها المبرمجون أيضًا إلى مسح بيانات الملف. لحسن الحظ، هناك طرق متعددة لمسح النص من ملف. في هذا المنشور، سنستخدم بعض الأمثلة البسيطة لتوضيح كيفية مسح ملف نصي في Python.
من خلال الاستفادة من بعض أدوات Python القياسية، يمكننا فتح ملفات نصية وقراءتها ومسحها. وسنتعلم أيضًا كيفية إزالة أسطر معينة من ملف نصي باستخدام تدوين الشرائح.
يعمل Python على تبسيط عملية التعامل مع الملفات، مما يؤدي إلى إنشاء برامج أكثر إيجازًا. ونتيجة لدراسة هذا الدليل، ستفهم كيف يمكن لـ Python مسح ملفات النصوص وحذف أسطر البيانات.
مسح ملف نصي باستخدام الدالة open() في وضع الكتابة
سيؤدي فتح ملف في وضع الكتابة إلى حذف محتويات الملف تلقائيًا. تأخذ الدالة open()
وسيطتين، ملف النص الذي نرغب في فتحه والوضع الذي نفتحه فيه.
يؤدي فتح ملف في وضع الكتابة إلى مسح بياناته. أيضًا، إذا لم يكن الملف المحدد موجودًا، فسيقوم Python بإنشاء ملف جديد. الطريقة الأبسط لحذف ملف هي استخدام open()
وتعيينه إلى متغير جديد في وضع الكتابة.
1 2 | file_to_delete = open("info.txt",'w') file_to_delete.close() |
تبسط عبارة with في Python معالجة الاستثناءات. كما أن استخدام with لفتح ملف في وضع الكتابة سيؤدي أيضًا إلى مسح بياناته. وتكمل عبارة pass المثال.
1 2 3 | # clear the data in the info file with open("info.txt",'w') as file: pass |
كيفية مسح ملف باستخدام التابع truncate
يقلل التابع truncate()
من حجم المستند. يأخذ هذا التابع وسيطة اختيارية تحدد الحجم الجديد للملف. إذا لم يتم توفير أي وسيطة، فسيظل الملف دون تغيير.
قد تؤدي محاولة اقتطاع ملف أطول من حجمه الأصلي إلى نتائج غير متوقعة. على سبيل المثال، قد يضيف البرنامج مسافة بيضاء إلى نهاية الملف إذا تجاوز حجم الاقتطاع حجم الملف الأصلي.
1 2 3 4 5 6 7 8 | with open("info.txt",'r+') as file: file.truncate(16) # read the file’s contents with open("info.txt", 'r') as file: lines = file.readlines() for line in lines: print(line) |
في المثال أعلاه، قام التابع truncate()
بتقليص حجم الملف إلى أول 16 حرفًا من النص. لاحظ أننا فتحنا الملف في وضع القراءة والكتابة. وهذا ضروري لكي يعمل التابع truncate.
مسح ملف نصي باستخدام تقطيع قائمة بايثون
باستخدام تدوين الشرائح في Python، من الممكن استرداد مجموعة فرعية من قائمة أو سلسلة أو مجموعة. باستخدام هذه الميزة في Python، يمكننا تحديد مؤشرات البداية والنهاية لمجموعة فرعية معينة.
يستخدم تدوين الشريحة صيغة خاصة للعثور على مجموعة فرعية من نطاق القيم. يوضح المثال التالي كيفية عمل تدوين الشريحة. من خلال تحديد بداية ونهاية وخطوة الشريحة، سنحصل على مجموعة فرعية من القائمة الأصلية.
1 2 3 | nums = [1,2,3,4,5,6,7,8,9] sub = nums[1:8:2] print(sub) |
الناتج
1 | [2, 4, 6, 8] |
بعد ذلك، سنستخدم نفس مستند info.txt من القسم السابق لإظهار كيفية استخدام تدوين الشرائح لمسح الأسطر من ملف نصي. سيعيد التابع readlines()
قائمة بأسطر النص في المستند.
بعد استخراج الأسطر، يمكننا استخدام تدوين الشرائح لإنشاء قائمة جديدة نستخدمها لاستبدال الملف القديم. سيبقى السطر الأول فقط من النص. سيتم مسح الأسطر الأخرى من ملف النص.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | # read the file's contents read_file = open("info.txt",'r') lines = read_file.readlines() read_file.close() write_file = open("info.txt",'w') # slice the file's content lines = lines[:1] for line in lines: write_file.write(line) print(line) write_file.close() |
ليست هناك تعليقات:
إرسال تعليق