الفصل 14
14.1 القراءة من الملفات
3.
b.
يفسر Python هذا الأمر على أنه محاولة من المبرمج لطباعة تفاصيل الكائن. تتم طباعة تفاصيل الكائن. مثال:
<_io.TextIOWrapper name='newfile.txt' mode='r' encoding='cp1252'>.
5.
b.
يتم استدعاء الدالّة
readlines() على fileobj. file_lines هي قائمة السلاسل النصية ['Hello world!\n', 'How are you?\n'].
6.
a.
تقرأ الدالّة
readline() السطر التالي من الملف. بما أن readline() تُستدعى مباشرة بعد فتح الملف، يتم قراءة السطر الأول. تتم طباعة السلسلة النصية الناتجة
"Hello world!"
. لاحظ أن readline() تتضمن الحرف '\n'، لذا ستتضمن الطباعة سطرًا جديدًا إضافيًا.
14.2 الكتابة إلى الملفات
3.
b.
'w'
يشير إلى وضع الكتابة، وسيتم إنشاء newlog.txt أو الكتابة فوقه (إذا كان newlog.txt موجودًا بالفعل) وسيسمح بالكتابة.
4.
c.
من المحتمل أن يكون resources.txt فارغًا، ولكن حالة resources.txt غير مؤكدة. لضمان حفظ المحتويات بشكل صحيح، يجب استخدام الدالّة
close().
14.3 الملفات في مواقع مختلفة والعمل مع ملفات القيم المفصولة بفواصل
2.
c.
يسمح استخدام الشرطات المائلة الأمامية / بدلاً من الشرطات المائلة الخلفية \ القياسية في Windows بقراءة المسار بشكل صحيح. المسار المتبوع باسم الملف يمكّن من فتح الملف، وعند قراءة ملف، يُفضل وضع القراءة.
4.
a.
بما أن الشرطات المائلة الخلفية في مسار Windows تظهر في وسيط السلسلة النصية، والذي يخبر Python عادةً أن هذا جزء من تسلسل هروب، فيجب تجاهل الشرطات المائلة الخلفية باستخدام حرف شرطة مائلة خلفية \ إضافي.
5.
a.
يشير حرف السطر الجديد
\n إلى أماكن فواصل الأسطر في الملف، وتستخدمه الدالّة readlines() للتمييز بين الأسطر.
7.
c.
يتم قراءة السطر الأول من books.csv في
csv_read. السطر الأول هو
'Title, Author, Pages'
، وهو نفس الصف الأول.
14.4 معالجة الاستثناءات
4.
b.
تطلق الدالّة
int() خطأ ValueError عند محاولة تحويل
"one"
إلى عدد صحيح، لذا يقفز البرنامج إلى بند except.