الدرس 4 من 10
العدّ بـ Counter
- 10 دقائق
- 5 فحوص
- 3 تلميحات
- إلى المطلوب
هدف الدرس
كم مرّة ظهر كل عنصر
الشرح
«كم مرّة ظهر كل عنصر؟» سؤال يتكرّر مع كل نوع من البيانات، كعدد الكلمات في تعليق أو عدد المنتجات في الطلبات، ولو كتبت له حلقة بنفسك لاحتجت أن تسأل في كل دورة هل المفتاح موجود قبل أن تزيد عدده.
أما Counter من collections فيفعل ذلك في سطر واحد، فـ Counter(orders) يُرجع قاموسًا مفاتيحه العناصر وقيمه عدد مرّات ظهورها. و.most_common(2) يُرجع أكثر عنصرين تكرارًا من الأكثر إلى الأقلّ، وكل واحد منهما زوج فيه العنصر وعدده. وإذا سألت عن عنصر غير موجود أعطاك 0 ولم يحدث الخطأ KeyError.
وانتبه إلى أن النصّ نفسه سلسلة من الحروف، فـ Counter("رائع رائع") يعدّ الحروف والمسافة لا الكلمات، لذلك قسّم النصّ إلى كلمات أولًا بـ .split().
المطلوب
اصنع من orders المتغيّر counts باستعمال Counter، واحسب في top أكثر منتجين طلبًا باستعمال most_common، ثم اصنع من الجملة review المتغيّر word_counts الذي يحفظ عدد مرّات كل كلمة.
الفحوص
5 فحوص- العدّاد counts يعدّ كل منتج
- المتغيّر counts من نوع Counter
- القائمة top فيها أكثر منتجين طلبًا
- القائمة top محسوبة بـ most_common
- العدّاد word_counts يعدّ الكلمات لا الحروف