يُعرض هنا كيفية تخزين كل سطر من الملف في قائمة. - كتاب المهارات الرقمية - الصف 9 - الفصل 1 - المملكة العربية السعودية

الكتاب: كتاب المهارات الرقمية - الصف 9 - الفصل 1 | المادة: المهارات الرقمية | المرحلة: الصف 9 | الفصل الدراسي: 1

الدولة: المملكة العربية السعودية | المنهج: المنهج السعودي - وزارة التعليم

الدرس: يُعرض هنا كيفية تخزين كل سطر من الملف في قائمة.

📚 معلومات الصفحة

الكتاب: كتاب المهارات الرقمية - الصف 9 - الفصل 1 | المادة: المهارات الرقمية | المرحلة: الصف 9 | الفصل الدراسي: 1

الدولة: المملكة العربية السعودية | المنهج: المنهج السعودي - وزارة التعليم

نوع المحتوى: درس تعليمي

📝 ملخص الصفحة

📚 تخزين أسطر الملف في قائمة

المفاهيم الأساسية

الرمز `\n`: يُستخدم للانتقال إلى سطر جديد في الملفات النصية. عند قراءة الأسطر وتخزينها في قائمة، يجب إزالة هذا الرقم لتنظيف البيانات.

دالة `replace()`: تستبدل حرفًا واحدًا فقط بحرف آخر. تُستخدم هنا لإزالة `\n` واستبداله بمسافة فارغة `" "`.

خريطة المفاهيم

```markmap

الملفات

العمليات الأساسية على الملفات

فتح الملف

#### دالة فتح (open)

##### أوضاع فتح الملف

  • r: فتح الملف للقراءة (الوضع الافتراضي)
  • a: فتح الملف للإلحاق (إضافة نص جديد للنهاية)
  • w: فتح الملف للكتابة (استبدال المحتوى أو إنشاء ملف جديد)

القراءة من ملف

#### خطوات عملية

  • التأكد من وجود الملف النصي (مثل `file.txt`) في نفس مجلد البرنامج
  • استخدام دالة `open()` مع وضع القراءة `"r"`
  • استخدام دالة `read()` لقراءة كافة محتويات الملف
  • استخدام دالة `close()` لإغلاق الملف
#### مثال عملي

  • `f = open("file.txt", "r")`
  • `print(f.read())`
  • `f.close()`

قراءة الملف سطراً بسطر

#### استخدام `readline()`

  • تُرجع سطراً واحداً في كل مرة
  • مثال: `print(f.readline())`
#### قراءة جميع الأسطر باستخدام حلقة

  • استخدام `while` مع `readline()`
  • مثال:
`line = f.readline()`

`while line:`

` print(line)`

` line = f.readline()`

تخزين الأسطر في قائمة

#### خطوات العملية

  • إنشاء قائمة فارغة: `citiesList = []`
  • فتح الملف للقراءة: `f = open("cities.txt", "r")`
  • استخدام حلقة `for` مع `readline()` لقراءة عدد محدد من الأسطر
  • إضافة كل سطر إلى القائمة: `citiesList.append(city)`
  • إغلاق الملف: `f.close()`
#### مثال عملي

  • `citiesList = []`
  • `f = open("cities.txt", "r")`
  • `for i in range(4):`
  • ` city = f.readline()`
  • ` citiesList.append(city)`
  • `print(citiesList)`
  • `f.close()`
#### الناتج بدون تنظيف

  • `['Riyadh\n', 'Jeddah\n', 'Abha\n', 'Dammam\n']`
#### تنظيف البيانات (إزالة `\n`)

  • استخدام دالة `replace()` داخل الحلقة
  • `c = city.replace("\n", " ")`
  • ثم إضافة المتغير `c` إلى القائمة
#### مثال مع التنظيف

  • `citiesList = []`
  • `f = open("cities.txt", "r")`
  • `for i in range(5):`
  • ` city = f.readline()`
  • ` c = city.replace("\n", " ")`
  • ` citiesList.append(c)`
  • `print(citiesList)`
  • `f.close()`

إلحاق نص جديد بالملف

#### الصيغة العامة

  • ` = open (, "a" )`
  • `.write ("")`

    #### مثال عملي للإلحاق

    • `f=open("file.txt", "a")`
    • `f.write("\nThis is the new text.")`
    #### استخدام `\n`

    • للانتقال إلى سطر جديد عند كتابة النص
    #### قراءة الملف بعد الإلحاق

    • `f=open("file.txt", "r")`
    • `print(f.read())`
    • `f.close()`

    الكتابة في ملف

    #### الصيغة العامة

    • ` = open (, "w")`
    • `.write ("")`

      #### مثال عملي للكتابة

      • `f=open("file.txt", "w")`
      • `f.write("The previous text has been deleted...")`
      #### مثال عملي لكتابة قائمة مدن

      • `f=open("cities.txt", "w")`
      • `f.write("Riyadh\n")`
      • `f.write("Jeddah\n")`
      • `f.write("Abha\n")`
      • `f.write("Dammam\n")`
      ```

      نقاط مهمة

      • عند قراءة سطر من ملف باستخدام `readline()`، يتم تضمين رمز السطر الجديد `\n` في نهاية السطر.
      • يجب إزالة `\n` من السطر قبل تخزينه في القائمة للحصول على بيانات نظيفة.
      • تُستخدم دالة `replace("\n", " ")` لاستبدال رمز السطر الجديد بمسافة فارغة أو حرف آخر.

      📋 المحتوى المنظم

      📖 محتوى تعليمي مفصّل

      يُعرض هنا كيفية تخزين كل سطر من الملف في قائمة.

      نوع: محتوى تعليمي

      يُعرض هنا كيفية تخزين كل سطر من الملف في قائمة.

      يستخدم الرمز \n للانتقال إلى سطر جديد، وللاستخدام دوال القائمة يجب إزالة الحرف \n، حيث إن دالة الاستبدال تستبدل حرفًا واحدًا فقط بحرف آخر.

      نوع: محتوى تعليمي

      يستخدم الرمز \n للانتقال إلى سطر جديد، وللاستخدام دوال القائمة يجب إزالة الحرف \n، حيث إن دالة الاستبدال تستبدل حرفًا واحدًا فقط بحرف آخر.

      مثال على قراءة الأسطر من ملف وإضافتها إلى قائمة

      نوع: محتوى تعليمي

      citiesList= [] f=open("cities.txt", "r") for i in range(4): city= f.readline() citiesList.append(city) print(citiesList) f.close()

      ناتج تشغيل الكود السابق

      نوع: محتوى تعليمي

      ['Riyadh\n', 'Jeddah\n', 'Abha\n', 'Dammam\n']

      جرب بنفسك

      نوع: محتوى تعليمي

      جرب بنفسك

      جرّب المقطع البرمجي الآتي، وفَسّر غرض كل سطر تمت إضافته هنا.

      نوع: محتوى تعليمي

      جرّب المقطع البرمجي الآتي، وفَسّر غرض كل سطر تمت إضافته هنا.

      مثال مع استبدال \n بمسافة فارغة

      نوع: محتوى تعليمي

      citiesList= [] f=open("cities.txt", "r") for i in range(5): city= f.readline() استبدل \n بمسافة فارغة # c=city.replace("\n", " ") citiesList.append(c) print(citiesList) f.close()

      وزارة التعليم

      نوع: محتوى تعليمي

      وزارة التعليم Ministry of Education 2025 - 1447

      رقم الصفحة

      نوع: NON_EDUCATIONAL

      207

      📄 النص الكامل للصفحة

      --- SECTION: يُعرض هنا كيفية تخزين كل سطر من الملف في قائمة. --- يُعرض هنا كيفية تخزين كل سطر من الملف في قائمة. --- SECTION: يستخدم الرمز \n للانتقال إلى سطر جديد، وللاستخدام دوال القائمة يجب إزالة الحرف \n، حيث إن دالة الاستبدال تستبدل حرفًا واحدًا فقط بحرف آخر. --- يستخدم الرمز \n للانتقال إلى سطر جديد، وللاستخدام دوال القائمة يجب إزالة الحرف \n، حيث إن دالة الاستبدال تستبدل حرفًا واحدًا فقط بحرف آخر. --- SECTION: مثال على قراءة الأسطر من ملف وإضافتها إلى قائمة --- citiesList= [] f=open("cities.txt", "r") for i in range(4): city= f.readline() citiesList.append(city) print(citiesList) f.close() --- SECTION: ناتج تشغيل الكود السابق --- ['Riyadh\n', 'Jeddah\n', 'Abha\n', 'Dammam\n'] --- SECTION: جرب بنفسك --- جرب بنفسك --- SECTION: جرّب المقطع البرمجي الآتي، وفَسّر غرض كل سطر تمت إضافته هنا. --- جرّب المقطع البرمجي الآتي، وفَسّر غرض كل سطر تمت إضافته هنا. --- SECTION: مثال مع استبدال \n بمسافة فارغة --- citiesList= [] f=open("cities.txt", "r") for i in range(5): city= f.readline() استبدل \n بمسافة فارغة # c=city.replace("\n", " ") citiesList.append(c) print(citiesList) f.close() --- SECTION: وزارة التعليم --- وزارة التعليم Ministry of Education 2025 - 1447 --- SECTION: رقم الصفحة --- 207

      🎴 بطاقات تعليمية للمراجعة

      عدد البطاقات: 3 بطاقة لهذه الصفحة

      عند قراءة الأسطر من ملف نصي في بايثون باستخدام دالة readline()، ما هو الرمز الذي يُضاف تلقائيًا إلى نهاية كل سطر ويجب إزالته أحيانًا للتعامل مع البيانات؟

      • أ) الرمز \t
      • ب) الرمز \n
      • ج) الرمز #
      • د) الرمز //

      الإجابة الصحيحة: b

      الإجابة: الرمز \n

      الشرح: 1. عند قراءة ملف نصي سطرًا بسطر في بايثون، تُرجع دالة readline() كل سطر كسلسلة نصية. 2. تُنهي بايثون كل سلسلة برمز \n الذي يمثل نهاية السطر (newline). 3. لمعالجة البيانات (مثل البحث أو المقارنة) بشكل صحيح، قد نحتاج إلى إزالة هذا الرمز باستخدام دالة replace().

      تلميح: هذا الرمز يمثل أمرًا خاصًا في البرمجة للانتقال إلى سطر جديد.

      التصنيف: مفهوم جوهري | المستوى: سهل

      ما الغرض الأساسي من استخدام الدالة replace('\n', ' ') في الكود البرمجي الذي يقرأ أسطرًا من ملف؟

      • أ) حذف السطر بالكامل من الملف الأصلي.
      • ب) تقسيم السطر إلى كلمات متعددة بناءً على المسافات.
      • ج) استبدال رمز نهاية السطر بمسافة فارغة لتنظيف البيانات قبل إضافتها للقائمة.
      • د) إضافة مسافة إضافية في بداية كل سطر.

      الإجابة الصحيحة: c

      الإجابة: استبدال رمز نهاية السطر بمسافة فارغة لتنظيف البيانات قبل إضافتها للقائمة.

      الشرح: 1. تقرأ الدالة readline() السطر وتضيف رمز \n في نهايته. 2. رمز \n غير مرغوب فيه عند تخزين أسماء المدن أو البيانات للعرض أو المعالجة. 3. تقوم replace('\n', ' ') باستبدال هذا الرمز بمسافة (أو بسلسلة فارغة '') لإزالته. 4. النتيجة: قائمة تحتوي على بيانات نظيفة بدون رموز تحكم خاصة.

      تلميح: تهدف هذه العملية إلى جعل البيانات المخزنة في القائمة أنظف وأسهل في المعالجة اللاحقة.

      التصنيف: مفهوم جوهري | المستوى: متوسط

      إذا كان ناتج تشغيل كود يقرأ ملفًا ويضيف أسطره إلى قائمة هو ['Riyadh\n', 'Jeddah\n']، فما الذي يشير إليه وجود '\n' في نهاية كل عنصر؟

      • أ) أن الملف الأصلي يحتوي على الرمز \n كجزء من اسم المدينة.
      • ب) أن الكود أضاف كل سطر كما هو من الملف بما فيه رمز نهاية السطر، ولم يقم بتنظيف البيانات.
      • ج) أن هناك خطأ في فتح الملف يجب تصحيحه.
      • د) أن الكود يقرأ الملف حرفًا بحرف وليس سطرًا بسطر.

      الإجابة الصحيحة: b

      الإجابة: أن الكود أضاف كل سطر كما هو من الملف بما فيه رمز نهاية السطر، ولم يقم بتنظيف البيانات.

      الشرح: 1. الناتج ['Riyadh\n', 'Jeddah\n'] هو الناتج المباشر لإضافة السلسلة النصية التي تُرجعها readline() إلى القائمة. 2. تحتوي كل سلسلة على اسم المدينة متبوعًا برمز \n. 3. يشير هذا إلى أن الخطوة البرمجية لإزالة \n (مثل استخدام replace) لم تُنفذ. 4. لتصحيح الناتج وجعله ['Riyadh', 'Jeddah']، يجب إزالة \n أولاً.

      تلميح: فكر في الفرق بين البيانات الخام كما تُقرأ من الملف، والبيانات المعدة للاستخدام.

      التصنيف: تفكير ناقد | المستوى: متوسط

      إدرس AI - مدرس ذكاء اصطناعي مجاني للمناهج السعودية | وزارة التعليم