اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

نعم، الكائن المعاد من دالة enumerate() في بايثون هو عبارة عن قائمة من الصفوف (tuples).

دالة enumerate() تقوم بإرجاع كائن مُعَرِّف (iterator) يُنتج صفوف، حيث تتكون كل صف من عنصرين:

1. الفهرس (index) للعنصر الحالي، ويبدأ من 0 افتراضيًا (يمكن تغيير القيمة الابتدائية إذا تم تمرير قيمة ثانية للدالة).
2. العنصر (item) نفسه من التسلسل (sequence) الذي تم تمريره إلى دالة enumerate().

لذلك، إذا كان لديك قائمة مثل:

my_list = ['apple', 'banana', 'cherry']

فإن دالة enumerate(my_list) ستنتج الصفوف التالية:

(0, 'apple')
(1, 'banana')
(2, 'cherry')

يمكنك بعد ذلك استخدام حلقة للتعامل مع هذه الصفوف، مثلًا:

for idx, item in enumerate(my_list):
    print(f'Index: {idx}, Item: {item}')

وستكون المخرجات:

Index: 0, Item: apple
Index: 1, Item: banana
Index: 2, Item: cherry

لذلك، نعم، الكائن المعاد من دالة enumerate() هو قائمة من الصفوف، حيث تحتوي كل صف على الفهرس والعنصر الموافق له في التسلسل الأصلي.

الدالة enumerate()‎ في بايثون.

  • 0
نشر

الكائن المعاد من الدالة enumerate هو كائن من نوع "enumerate object"، وهو في الأساس مجموعة من الأزواج والتي هي عبارة عن صفوف، حيث يحتوي كل زوج على قيمة مؤشر أو index وقيمة العنصر المقابلة في القائمة أو التسلسل الذي تم تمريره للدالة ()enumerate,

بحيث أن كل زوج في الكائن المعاد من الدالة enumerate هو صف tuple مكون من عنصرين:

  • المؤشر: وهو رقم يمثل موقع العنصر في التسلسل.
  • القيمة: وهي القيمة الموجودة في ذلك الموقع.
my_list = ['ahmed', 'akram', 'mounir']

# استخدام enumerate() للحصول على enumerate object
enum_obj = enumerate(my_list)

# يمكن تحويله إلى قائمة للرؤية بوضوح
enum_list = list(enum_obj)
print(enum_list)

لذا، يمكننا القول أن الكائن المعاد من الدالة enumerate  هو كائن من نوع enumerate objec وهو قابل للتّكرار أي يمكن استخدامه في حلقات for، ومحتوى الكائن عبارة عن أزواج بحيث أن لكل زوج، لديه مؤشر ويمثل رقم العنصر بينما الجزء الثاني هو العنصر نفسه.

يمكنك الاطلاع على هذه المقالة من موسوعة حسوب للاستفادة أكتر: الدالة enumerate()‎ في بايثون.

  • 0
نشر

كما أخبرك ياسر في النعليق السابق أن الكائن المعاد من الدالة enumerate  هو كائن enumerate. هذا الكائن هو عداد iterator يُنتج سلسلة من الأزواج، حيث يحتوي كل زوج على فهرس

لكن إذا أردت الحصول على صف tuple من هذه الأزواج، يمكنك تحويل كائن enumerate إلى قائمة list أو صف tuple باستخدام الدالة tuple(). على سبيل المثال:

abc = ['a', 'b', 'c']

pairs = list(enumerate(abc))
tuple_pairs = tuple(pairs)
print(tuple_pairs)  
# Output: ((0, 'a'), (1, 'b'), (2, 'c'))

لذلك، فإن الكائن المعاد مباشرةً من enumerate هو كائن عداد iterator، ولكن يمكنك تحويله إلى صف tuple إذا كنت بحاجة إليه على هذا الشكل.

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...