• الإعلانات

    • فيصل الحربي

      تسجيل عضوية جديدة في المنتدى   01/31/2016

      السلام عليكم ورحمة الله وبركاته  عزيزي العضو الجديد :  حاليا رسالة الإيميل لتأكيد صحة إيميلكم تذهب للبريد العشوائي ( جاري حل المشكلة )  فإذا لم تجد رسالة التحقق من إيميلكم في صندوق الوارد لديكم إتجه للبريد العشوائي ( JUNK)  وقم بتفعيل إشتراككم من هناك   

البحث في المنتدى

Showing results for tags 'reduce'.

  • البحث بالتاقات

    اكتب الكلمات المفتاحيه بينها علامه الفاصله
  • البحث بكاتب الموضوع

تم إيجاد 1 نتيجة

  1. شرح map filter reduce

    هي ثلاث وضائف مهمة جدا و توفر الكثير من الوقت في كتابة الأكواد تستعمل ثلاثتها مع القوائم   أولا أشرح الكلمة المحجوزة : lambda تستعمل لتعريف الدوال على الشكل التالي lambda input arguments:output equations lambda x:x**2 lambda x:-x lambda a,b,c:a+b-c**2   1 map تستعمل هذه الوظيفة لتطبيق وظيفة معينة على كامل عناصل القائمة واحدا واحدا  تحويلهم ل str T=[1,2,3,4,5] T=map(str,T) أو حساب التربيع T=map(lambda x:x**2,T) 2 reduce لدينا قائمة معينة نريد تطبيق دالة معينة: حساب أصغر قيمة، أكبر قيمة، المضاعف المشترك الأصغر، القاسم المشترك الأكبر إلخ لكن الدالة لها 2 باراماتر فقط,,,,,,, تستعمل هنا الدالة reduce بحيث تقوم بتطبيق الدالة على أول عنصرين، و بعدها يتم تطبيق الدالة على النتيجة مع العنصر الثالث، و النتيجة مع العنصر الرابع و هكذا لغاية آخر عنصر مثال عملي: list=[1,2,3,4,5,6,7] نستعمل مثال بسيط جدا فقط لفهم كيفية العمل: مثلا نريد حساب ناتج ضرب جميع العناصر ببعضها البعض و نستعمل الدالة lambda x,y:x*y الكود : S=reduce(lambda x,y:x+y,list)) شرح كيف يعمل الكود أولا يحسب الجداء 1*2      الناتج 2 ثم يحسب الجداء 2 *3      الناتج 6 ثم يحسب الجداء 6*4       الناتج 24 ثم يحسب الجداء 24*7     الناتج 168   3 filer   كما هو واضح من اسمها فهي تستعمل للفلترة (إختيار مجموعة عناصر من قائمة باستعمال شرط معين) باستعمال دالة ترجع True   أو False ملاحضة هامة: جميع الأعداد الموجبة و السالبة تعتبر :True الصفر يعتبر :False أي سلسلة حرفية لدينا طولها أكبر من أو يساوي  الواحد تعتبر: True سلسلة حرفية طولها أكبر من أو يساوي الواحد يعني لا تساوي "" سلسلة فارغة السلسلة الفارغة "" تعتبر :False دالة تقوم بتحديد إن كان العنصر موجبا lambda x:x<0 دالة تقوم بتحديد إن كان العدد زوجي (مضاف ل 2) lambda x:x%2==0   مثلا ليدنا قائمة و نريد إختيار العناصر المضاع ل 2 ، أو مثلا إختيار العناصر الموجبة أو السالبة   h=[-1,3 5,11, 14, -6 , 0, -15] الكود : h=filter(lambda x:x>=0,h)