الوصول إلى قيم الخلايا - كتاب المهارات الرقمية - الصف 8 - الفصل 1 - المملكة العربية السعودية

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

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

الدرس: الوصول إلى قيم الخلايا

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

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

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

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

📝 ملخص الصفحة

📚 الوصول إلى قيم الخلايا

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

الوصول إلى قيمة خلية: استدعاء سمة `.value` لكائن خلية معين بعد تحديد موقعها.

الدالتان `iter_rows` و `iter_cols`: وظيفتهما مفيدة في اختيار أكثر من خلية واحدة، لتجنب البحث اليدوي الطويل والمعرض للخطأ.

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

```markmap

استخدام بايثون مع إكسل

الهدف

أتمتة المهام المتكررة

إجراء العمليات الحسابية المعقدة بشكل أسرع

الأداة: مكتبة أوبن بيكسل (openpyxl)

وظائفها

  • قراءة بيانات إكسل
  • كتابة بيانات إكسل
  • إجراء الحسابات الرياضية
  • إنشاء الرسوم والمخططات البيانية

خطوات تثبيتها في PyCharm

  • فتح نافذة "Packages" (الحزم)
  • البحث عن "openpyxl"
  • اختيار المكتبة والضغط على "Install" (تثبيت)
  • انتظار رسالة اكتمال التثبيت

الخطوات الأولى بعد التثبيت

استيراد المكتبة

  • استخدام الأمر: `import openpyxl`

العمل مع دفاتر العمل

#### تحميل دفتر عمل موجود

  • استخدام دالة: `load_workbook()`
  • يجب وضع الملف في نفس مجلد الكود أو استخدام المسار المطلق
#### التعرف على أوراق العمل

  • استخدام السمة: `sheetnames` لمعرفة أسماء الأوراق

معرفة أبعاد الورقة

سمة الصف الأقصى (max_row attribute)

  • تُستخدم لمعرفة عدد الصفوف الموجودة في الورقة

سمة العمود الأقصى (max_column attribute)

  • تُستخدم لمعرفة عدد الأعمدة الموجودة في الورقة

الوصول إلى الخلايا

خصائص الخلية الرئيسية

  • موقعها في الملف
  • قيمتها

طرق الوصول

  • الوصول إلى خلية محددة (مثل `sheet_obj["A1"]`)
  • الوصول إلى نطاق من الخلايا (مثل `sheet_obj["B1":"B5"]`)

الوصول إلى قيم الخلايا

الوصول إلى قيمة خلية واحدة

  • تحديد موقع الخلية (مثال: "C3")
  • استدعاء سمة `.value` (مثال: `cell.value`)

الوصول إلى قيمة أكثر من خلية واحدة

  • استخدام الدالتان `iter_rows` و `iter_cols`
  • لتجنب البحث اليدوي الطويل والمعرض للخطأ
```

نقاط مهمة

  • بعد معرفة موقع الخلية (مثل "C3")، يمكن الحصول على قيمتها باستخدام `cell.value`.
  • مثال عملي: لطباعة عدد السعرات الحرارية للحليب (61) من ملف `nutrition.xlsx`، يتم تحميل الملف والوصول إلى الخلية C3 ثم طباعة قيمتها.
  • للوصول إلى قيم عدة خلايا (مثل جميع الحقائق الغذائية للحليب)، يُفضل استخدام الدالتين `iter_rows` أو `iter_cols` بدلاً من البحث اليدوي.

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

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

الوصول إلى قيم الخلايا

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

الوصول إلى قيم الخلايا

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

لقد تعلمت كيفية الحصول على موقع الخلية. لكن في معظم الأوقات، تحتاج إلى قيمة الخلية. تحتاج إلى استدعاء سمة قيمة كائن خلية معين.

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

في هذا المثال سنستخدم ملف إكسل للتغذية لطباعة عدد السعرات الحرارية (kCal) من الحليب. كما رأيت من قبل، يحتوي هذا الملف على 12 صفًا و 12 عمودًا. للحصول على عدد السعرات الحرارية (kCal) من الحليب، عليك أولاً العثور على موقعها، وهو "C3". ثم يمكنك استدعاء سمة القيمة في هذه الخلية.

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

import openpyxl path = "nutrition.xlsx" wb = openpyxl.load_workbook(path) sheet_obj = wb['arabic'] position = "C3" cell = sheet_obj[position] value = cell.value print(value)

الوصول إلى قيمة أكثر من خلية واحدة

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

الوصول إلى قيمة أكثر من خلية واحدة

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

افترض الآن أنك تريد الحصول على جميع الحقائق الغذائية للحليب. يمكنك العثور يدويا على موقع كل خلية ثم استدعاء سمة قيمتها، ولكن ذلك سيستغرق وقتا طويلا ومن الممكن أيضا أن تكون قد ارتكبت بعض الأخطاء. لذلك، يوجد دالتان لهما وظيفتان مفيدتان في اختيار أكثر من خلية واحدة وهما iter_rows و iter_cols.

نوع: NON_EDUCATIONAL

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

نوع: NON_EDUCATIONAL

176

🔍 عناصر مرئية

100 جرام

A table displaying nutritional information per 100 grams for various food items, including water, energy, protein, fats, carbohydrates, calcium, phosphorus, iron, sodium, and potassium.

A block of Python code demonstrating how to use the 'openpyxl' library to load an Excel workbook named 'nutrition.xlsx', access a sheet named 'arabic', retrieve the value from cell 'C3', and print it to the console.

A light blue highlighted box containing the number '61'. An arrow points from the 'print(value)' line in the Python code block to this box, indicating that '61' is the output of that code.

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

--- SECTION: الوصول إلى قيم الخلايا --- الوصول إلى قيم الخلايا لقد تعلمت كيفية الحصول على موقع الخلية. لكن في معظم الأوقات، تحتاج إلى قيمة الخلية. تحتاج إلى استدعاء سمة قيمة كائن خلية معين. في هذا المثال سنستخدم ملف إكسل للتغذية لطباعة عدد السعرات الحرارية (kCal) من الحليب. كما رأيت من قبل، يحتوي هذا الملف على 12 صفًا و 12 عمودًا. للحصول على عدد السعرات الحرارية (kCal) من الحليب، عليك أولاً العثور على موقعها، وهو "C3". ثم يمكنك استدعاء سمة القيمة في هذه الخلية. import openpyxl path = "nutrition.xlsx" wb = openpyxl.load_workbook(path) sheet_obj = wb['arabic'] position = "C3" cell = sheet_obj[position] value = cell.value print(value) --- SECTION: الوصول إلى قيمة أكثر من خلية واحدة --- الوصول إلى قيمة أكثر من خلية واحدة افترض الآن أنك تريد الحصول على جميع الحقائق الغذائية للحليب. يمكنك العثور يدويا على موقع كل خلية ثم استدعاء سمة قيمتها، ولكن ذلك سيستغرق وقتا طويلا ومن الممكن أيضا أن تكون قد ارتكبت بعض الأخطاء. لذلك، يوجد دالتان لهما وظيفتان مفيدتان في اختيار أكثر من خلية واحدة وهما iter_rows و iter_cols. وزارة التعليم Ministry of Education 2025 - 1447 176 --- VISUAL CONTEXT --- **TABLE**: 100 جرام Description: A table displaying nutritional information per 100 grams for various food items, including water, energy, protein, fats, carbohydrates, calcium, phosphorus, iron, sodium, and potassium. Table Structure: Headers: مكونات | الماء | الطاقة | البروتين | الدهون | الكربوهيدرات | الكالسيوم (Ca) | الفوسفور (P) | الحديد (Fe) | الصوديوم (Na) | البوتاسيوم (K) Rows: Row 1: الحليب | 88.1 جرام | 61 سعر حراري | 3.27 جرام | 3.25 جرام | 4.63 جرام | 123 مليجرام | 101 مليجرام | 0 مليجرام | 0 مليجرام | 150 مليجرام Row 2: البيض | 75.8 جرام | 143 سعر حراري | 12.4 جرام | 8.65 جرام | 0.96 جرام | 48 مليجرام | 184 مليجرام | 1.67 مليجرام | 129 مليجرام | 132 مليجرام Row 3: الدجاج | 69.9 جرام | 149 سعر حراري | 23.9 جرام | 5.23 جرام | 0 جرام | 12 مليجرام | 184 مليجرام | 0.94 مليجرام | 117 مليجرام | 211 مليجرام Row 4: التفاح | 83.6 جرام | 65 سعر حراري | 0.16 جرام | 0 جرام | 15.6 جرام | 6 مليجرام | 111 مليجرام | 0.02 مليجرام | 1 مليجرام | 104 مليجرام Row 5: البرتقال | 8.85 جرام | 430 سعر حراري | 5.79 جرام | 13.7 جرام | 69.6 جرام | 29 مليجرام | 111 مليجرام | 2.28 مليجرام | 314 مليجرام | 245 مليجرام Row 6: الخبز | 55.7 جرام | 216 سعر حراري | 3.8 جرام | 11 جرام | 28.2 جرام | 109 مليجرام | 107 مليجرام | 0.93 مليجرام | 76 مليجرام | 249 مليجرام Row 7: مشروبات بالشوكولاتة | 1.5 جرام | 535 سعر حراري | 7.65 جرام | 29.7 جرام | 59.4 جرام | 189 مليجرام | 208 مليجرام | 2.35 مليجرام | 79 مليجرام | 372 مليجرام Row 8: حليب بالشوكولاتة | 94.7 جرام | 20 سعر حراري | 1.24 جرام | 3.24 جرام | 0.95 جرام | 35 مليجرام | 30 مليجرام | 0 مليجرام | 0 مليجرام | 253 مليجرام Row 9: التمر | 74.9 جرام | 89 سعر حراري | 1.09 جرام | 0.33 جرام | 22.8 جرام | 5 مليجرام | 22 مليجرام | 0.26 مليجرام | 1 مليجرام | 358 مليجرام Row 10: العسل | 1.3 جرام | 5.3 سعر حراري | 0 جرام | 0 جرام | 0 جرام | 0 مليجرام | 0 مليجرام | 0 مليجرام | 0 مليجرام | 0 مليجرام Row 11: الموز | 74.9 جرام | 89 سعر حراري | 1.09 جرام | 0.33 جرام | 22.8 جرام | 5 مليجرام | 22 مليجرام | 0.26 مليجرام | 1 مليجرام | 358 مليجرام Data: The table provides detailed nutritional values for 11 different food items (rows 2-12). Each column represents a specific nutrient or component with its corresponding unit. Context: This table serves as a data source for demonstrating how to extract specific nutritional values from a spreadsheet using programming, as explained in the accompanying text and code example. **EXAMPLE**: Untitled Description: A block of Python code demonstrating how to use the 'openpyxl' library to load an Excel workbook named 'nutrition.xlsx', access a sheet named 'arabic', retrieve the value from cell 'C3', and print it to the console. Context: This code example illustrates the practical application of programming to extract specific data points from a structured data source (Excel spreadsheet), directly relating to the preceding text's explanation of accessing cell values. **HIGHLIGHT_BOX**: Untitled Description: A light blue highlighted box containing the number '61'. An arrow points from the 'print(value)' line in the Python code block to this box, indicating that '61' is the output of that code. Key Values: 61 Context: This visual element represents the result of executing the Python code example, specifically the value extracted from cell C3 of the 'nutrition.xlsx' file, which corresponds to the energy (kCal) of milk.

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

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

في مكتبة openpyxl، ما هي السمة التي يجب استدعاؤها للحصول على القيمة المخزنة في خلية معينة؟

  • أ) السمة text
  • ب) السمة data
  • ج) السمة value
  • د) السمة content

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

الإجابة: السمة value

الشرح: 1. يتم تحميل ملف Excel وإنشاء كائن للخلية باستخدام موقعها (مثل C3). 2. القيمة الفعلية المخزنة في تلك الخلية (مثل رقم أو نص) تُخزن في سمة خاصة. 3. اسم هذه السمة هو `value`. 4. الوصول إليها يكون عبر `cell.value`.

تلميح: تذكر أن الخلية كائن، ولها سمات تخزن البيانات.

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

ما هي الوظيفة الأساسية للدالتين `iter_rows()` و `iter_cols()` في مكتبة openpyxl؟

  • أ) تنسيق شكل الخلايا.
  • ب) حفظ ملف Excel بعد التعديل.
  • ج) اختيار أكثر من خلية واحدة بكفاءة.
  • د) دمج محتويات عدة خلايا في خلية واحدة.

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

الإجابة: اختيار أكثر من خلية واحدة بكفاءة.

الشرح: 1. عند الحاجة لجلب قيم من عدة خلايا، البحث اليدوي لكل خلية بطيء وعرضة للخطأ. 2. توفر مكتبة openpyxl دوال مدمجة لتكرار (Iterate) عبر الصفوف أو الأعمدة. 3. الدالتان `iter_rows()` و `iter_cols()` تتيحان الوصول إلى مجموعات من الخلايا بكفاءة. 4. هذا يقلل الوقت ويحد من الأخطاء.

تلميح: تستخدم عندما تريد التعامل مع مجموعة من الخلايا بدلاً من خلية واحدة.

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

ما هي الخطوة الأولى التي يجب تنفيذها للوصول إلى قيمة خلية محددة في ورقة عمل باستخدام openpyxl؟

  • أ) فتح ملف Excel باستخدام الدالة `open()`.
  • ب) العثور على موقع الخلية (مثل C3).
  • ج) طباعة قيمة الخلية مباشرةً.
  • د) تحديد اسم ورقة العمل.

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

الإجابة: العثور على موقع الخلية (مثل C3).

الشرح: 1. لاستخراج قيمة من جدول بيانات، يجب أولاً تحديد إحداثياتها. 2. يتم ذلك باستخدام نظام تسمية الخلايا (مثل الحرف للعمود والرقم للصف). 3. في المثال، قيمة السعرات الحرارية للحليب موجودة في الخلية C3. 4. بعد تحديد الموقع، يمكن الوصول إلى كائن الخلية ثم سمة `value` الخاصة به.

تلميح: قبل جلب القيمة، يجب أن تعرف أين توجد هذه القيمة في الشبكة.

التصنيف: صيغة/خطوات | المستوى: متوسط