📋 المحتوى المنظم
📖 محتوى تعليمي مفصّل
دالة iter_cols
نوع: محتوى تعليمي
دالة iter_cols
نوع: محتوى تعليمي
تُستخدم دالة iter_cols عندما تريد الحصول على جميع القيم لعمود أو أكثر في ورقة عمل إكسل.
نوع: محتوى تعليمي
iter_cols (min_col=None, max_col=None, min_row=None, max_row=None)
نوع: محتوى تعليمي
إذا لم تحدد الفهرس، فسيبدأ نطاق البحث من الخلية الأولى "A1".
نوع: محتوى تعليمي
ستستخدم iter_cols للحصول على عدد السعرات الحرارية (kCal) لجميع المكونات الموجودة في ورقة العمل. ستحتاج إلى الحصول على مواقع جميع الخلايا ثم استدعاء سمة القيمة.
Python Code Example
نوع: محتوى تعليمي
import openpyxl
path = "nutrition.xlsx"
wb = openpyxl.load_workbook(path)
sheet_obj = wb['arabic']
# يحتوي على مواقع حقائق الطاقة لجميع المكونات sLoC أنشئ متغير
cols = sheet_obj.iter_cols(min_col=3, max_col=3, min_row=3, max_row=12)
# المتداخلة لطباعة قيمة كل خلية rof الآن استخدم حلقات
print("السعرات الحرارية لجميع المكونات:", end=" ")
for col in cols:
for cell in col:
print(cell.value, end=" ")
Code Output
نوع: محتوى تعليمي
السعرات الحرارية لجميع المكونات: 61 143 149 261 65 430 216 535 20 89
نوع: METADATA
وزارة التعليم
Ministry of Education
2025 - 1447
نوع: METADATA
178
🔍 عناصر مرئية
The function signature for iter_cols showing its parameters with default None values, indicating optional arguments for column and row ranges.
An oval callout box with an arrow pointing to 'min_col' and 'max_col' in the function signature, labeling them as 'فهرس العمود الأصغر والأكبر' (smallest and largest column index).
An oval callout box with an arrow pointing to 'min_row' and 'max_row' in the function signature, labeling them as 'فهرس الصف الأصغر والأكبر' (smallest and largest row index).
A pink highlighted box containing text that explains the default behavior of the iter_cols function: if no index (row or column) is specified, the search range will start from cell 'A1'.
A Python code example demonstrating the use of the openpyxl library to load an Excel workbook named 'nutrition.xlsx', select the 'arabic' sheet, and then use iter_cols to extract data from column 3, rows 3 to 12. It then iterates through the extracted cells and prints their values, preceded by the label 'السعرات الحرارية لجميع المكونات:'.
The output of the Python code example, displaying a sequence of numerical values representing 'السعرات الحرارية لجميع المكونات:' (Calories for all components). The values are 61, 143, 149, 261, 65, 430, 216, 535, 20, 89.
📄 النص الكامل للصفحة
دالة iter_cols
تُستخدم دالة iter_cols عندما تريد الحصول على جميع القيم لعمود أو أكثر في ورقة عمل إكسل.
iter_cols (min_col=None, max_col=None, min_row=None, max_row=None)
إذا لم تحدد الفهرس، فسيبدأ نطاق البحث من الخلية الأولى "A1".
ستستخدم iter_cols للحصول على عدد السعرات الحرارية (kCal) لجميع المكونات الموجودة في ورقة العمل. ستحتاج إلى الحصول على مواقع جميع الخلايا ثم استدعاء سمة القيمة.
--- SECTION: Python Code Example ---
import openpyxl
path = "nutrition.xlsx"
wb = openpyxl.load_workbook(path)
sheet_obj = wb['arabic']
# يحتوي على مواقع حقائق الطاقة لجميع المكونات sLoC أنشئ متغير
cols = sheet_obj.iter_cols(min_col=3, max_col=3, min_row=3, max_row=12)
# المتداخلة لطباعة قيمة كل خلية rof الآن استخدم حلقات
print("السعرات الحرارية لجميع المكونات:", end=" ")
for col in cols:
for cell in col:
print(cell.value, end=" ")
--- SECTION: Code Output ---
السعرات الحرارية لجميع المكونات: 61 143 149 261 65 430 216 535 20 89
وزارة التعليم
Ministry of Education
2025 - 1447
178
--- VISUAL CONTEXT ---
**CODE_SNIPPET**: Untitled
Description: The function signature for iter_cols showing its parameters with default None values, indicating optional arguments for column and row ranges.
Context: Illustrates the syntax and parameters of the iter_cols function from the openpyxl library.
**DIAGRAM**: Untitled
Description: An oval callout box with an arrow pointing to 'min_col' and 'max_col' in the function signature, labeling them as 'فهرس العمود الأصغر والأكبر' (smallest and largest column index).
Context: Explains the meaning of the min_col and max_col parameters in the iter_cols function.
**DIAGRAM**: Untitled
Description: An oval callout box with an arrow pointing to 'min_row' and 'max_row' in the function signature, labeling them as 'فهرس الصف الأصغر والأكبر' (smallest and largest row index).
Context: Explains the meaning of the min_row and max_row parameters in the iter_cols function.
**HIGHLIGHT_BOX**: Untitled
Description: A pink highlighted box containing text that explains the default behavior of the iter_cols function: if no index (row or column) is specified, the search range will start from cell 'A1'.
Context: Provides important information about the default parameters of the iter_cols function.
**CODE_BLOCK**: Untitled
Description: A Python code example demonstrating the use of the openpyxl library to load an Excel workbook named 'nutrition.xlsx', select the 'arabic' sheet, and then use iter_cols to extract data from column 3, rows 3 to 12. It then iterates through the extracted cells and prints their values, preceded by the label 'السعرات الحرارية لجميع المكونات:'.
Context: Provides a practical example of how to use the iter_cols function to extract specific data from an Excel file using Python.
**TEXT_BLOCK**: Untitled
Description: The output of the Python code example, displaying a sequence of numerical values representing 'السعرات الحرارية لجميع المكونات:' (Calories for all components). The values are 61, 143, 149, 261, 65, 430, 216, 535, 20, 89.
Data: A list of 10 integer values representing calorie counts.
Key Values: 61, 143, 149, 261, 65, 430, 216, 535, 20, 89
Context: Shows the result of executing the provided Python code, demonstrating the data extracted from the Excel sheet.
🎴 بطاقات تعليمية للمراجعة
عدد البطاقات: 4 بطاقة لهذه الصفحة
ما هي الوظيفة الرئيسية لدالة `iter_cols` في مكتبة openpyxl؟
- أ) تُستخدم لإنشاء أعمدة جديدة في ورقة عمل إكسل.
- ب) تُستخدم لحساب مجموع القيم في عمود معين.
- ج) تُستخدم للحصول على جميع القيم لعمود أو أكثر في ورقة عمل إكسل.
- د) تُستخدم لحذف بيانات من أعمدة محددة في ورقة العمل.
الإجابة الصحيحة: c
الإجابة: تُستخدم للحصول على جميع القيم لعمود أو أكثر في ورقة عمل إكسل.
الشرح: 1. دالة `iter_cols` هي جزء من مكتبة openpyxl لمعالجة ملفات إكسل في بايثون.
2. وظيفتها الأساسية هي استرجاع (التكرار عبر) نطاق من الأعمدة في ورقة العمل.
3. تسمح للمبرمج باستخراج قيم الخلايا من أعمدة معينة بناءً على فهارس الصفوف والأعمدة المحددة.
تلميح: فكر في وظيفة تتعلق باستخراج البيانات من أعمدة محددة.
التصنيف: تعريف | المستوى: سهل
إذا لم تحدد أيًا من معاملات `min_col`, `max_col`, `min_row`, `max_row` عند استدعاء `iter_cols()`، من أين يبدأ نطاق البحث؟
- أ) يبدأ نطاق البحث من العمود الأخير في الورقة.
- ب) يبدأ نطاق البحث من الخلية الأولى 'A1'.
- ج) يبدأ نطاق البحث من العمود 'C' والصف '3'.
- د) سيظهر خطأ لأن الدالة تحتاج إلى معامل واحد على الأقل.
الإجابة الصحيحة: b
الإجابة: يبدأ نطاق البحث من الخلية الأولى 'A1'.
الشرح: 1. جميع معاملات دالة `iter_cols` (min_col, max_col, min_row, max_row) اختيارية وافتراضيتها `None`.
2. عندما تكون جميعها `None` (أي لم يتم تحديدها)، تفترض الدالة سلوكًا افتراضيًا.
3. هذا السلوك الافتراضي هو بدء البحث والتكرار من أول خلية في ورقة العمل، وهي الخلية 'A1'.
تلميح: ما هي الخلية الافتراضية التي يبدأ منها البرنامج إذا لم تحدد له نقطة بداية؟
التصنيف: مفهوم جوهري | المستوى: متوسط
في الكود `sheet_obj.iter_cols(min_col=3, max_col=3, min_row=3, max_row=12)`، ما نطاق الخلايا الذي سيتم استرداد قيمه؟
- أ) جميع الخلايا في الصف الثالث من العمود الأول إلى العمود الثاني عشر.
- ب) جميع الخلايا في العمود الثالث (C) من الصف الأول إلى الصف الثاني عشر.
- ج) جميع الخلايا في العمود الثالث (C) من الصف الثالث إلى الصف الثاني عشر.
- د) جميع الخلايا في الصفوف من 3 إلى 12 والأعمدة من 1 إلى 3.
الإجابة الصحيحة: c
الإجابة: جميع الخلايا في العمود الثالث (C) من الصف الثالث إلى الصف الثاني عشر.
الشرح: 1. `min_col=3` و `max_col=3` يعني أن النطاق يقتصر على العمود رقم 3 فقط (العمود C).
2. `min_row=3` يعني أن البحث يبدأ من الصف رقم 3.
3. `max_row=12` يعني أن البحث ينتهي عند الصف رقم 12.
4. النتيجة: سيتم استرداد قيم الخلايا في النطاق C3:C12.
تلميح: ركز على معاني `min_col`, `max_col`, `min_row`, و `max_row`.
التصنيف: سؤال اختبار | المستوى: متوسط
ما هي الخطوة التالية بعد إنشاء كائن `cols` باستخدام `iter_cols()` للحصول على القيم الفعلية للخلايا؟
- أ) استخدام الأمر `print(cols.value)` مباشرة.
- ب) استخدام حلقة `for` واحدة للتكرار مباشرة على كائن `cols`.
- ج) استخدام حلقتين `for` متداخلتين: واحدة للتكرار عبر الأعمدة وأخرى للتكرار عبر الخلايا داخل كل عمود.
- د) تحويل كائن `cols` إلى قائمة باستخدام `list()` ثم فهرستها.
الإجابة الصحيحة: c
الإجابة: استخدام حلقتين `for` متداخلتين: واحدة للتكرار عبر الأعمدة وأخرى للتكرار عبر الخلايا داخل كل عمود.
الشرح: 1. `iter_cols()` تُرجع مولدًا (generator) يحتوي على مجموعات (tuples) من كائنات الخلايا.
2. للحصول على القيمة داخل كل خلية، يجب الوصول إلى سمة `.value` الخاصة بها.
3. للوصول إلى كل خلية، نستخدم حلقة `for` خارجية للتكرار عبر كل عمود (col) في `cols`.
4. ثم نستخدم حلقة `for` داخلية للتكرار عبر كل خلية (cell) داخل العمود الحالي (col).
5. أخيرًا، نطبع `cell.value` للحصول على القيمة المخزنة.
تلميح: كائن `cols` يحتوي على مجموعات من الخلايا. كيف نصل إلى كل خلية على حدة؟
التصنيف: صيغة/خطوات | المستوى: صعب