Muthanna Alqaisi نشر 15 مايو أرسل تقرير نشر 15 مايو words =["python", "php", "java", "ruby"] def finder (iterable, text): def find(login): for i in login: if str(i).startswith(text): return True return False return list(filter(find, iterable)) result = finder(words, "p") print(result) # ما فائدة iterable vs text 2 اقتباس
0 Mustafa Suleiman نشر 15 مايو أرسل تقرير نشر 15 مايو iterable و text هما معاملات Parameters في الدالة finder، حيث يتم تمرير قيم مُعرفات أو وسائط Arguments لهم عند استدعاء الدالة. وiterable هو القائمة words التي تحتوي القائمة على العناصر (السلاسل) التالية: "python", "php", "java", "ruby". عند تمرير words إلى دالة finder، يتم تكرار كل عنصر (سلسلة) في القائمة للتحقق من بدءه بالنص المحدد. والنص المحدد نمرره من خلال معامل text حيث نمرر "p" إلى دالة finder واستخدام النص (الحرف) كمعيار لتصفية العناصر في iterable (القائمة). return True: إذا بدأ العنصر بـ "p"، فهذا يرجع True. return False: إذا لم يبدأ العنصر بـ "p"، فهذا يرجع False. 1 اقتباس
0 عبدالباسط ابراهيم نشر 15 مايو أرسل تقرير نشر 15 مايو أولاً iterable و text تستخدم كمتغيرات أو معاملات في دالة finder ويمكن تبسيط الكود كالتالي بالنسبة لمعامل iterable هو القائمة التي سيتم البحث فيها عن العناصر التي تبدأ بالنص text. في الكود القائمة words سيتم البحث فيها. أما بالنسبة ل text هو النص الذي سيتم البحث عن العناصر التي تبدأ به في القائمة iterable. في المثال سيتم البحث عن العناصر التي تبدأ بحرف "p". في دالة filter تم تمرير الدالة find لتطبيقها على كل عنصر من القائمة words والتي تم تمريرها كمعامل يسمى iterable لذلك فإن دالة finder تعتمد على دالة filter في ترشيح العناصر ولكن من خلال تعريف دالة أخرى find لمهمة الترشيح بدلا من كتابة الشرط مباشرة. 1 اقتباس
0 عبد الوهاب بومعراف نشر 15 مايو أرسل تقرير نشر 15 مايو في الكود الذي أرسلته، الدالة `finder` تستخدم معاملين، الأول هو `iterable` وهو عبارة عن قائمة أو مجموعة تحتوي على عناصر يمكن تكرارها. في هذا المثال، `iterable` هو قائمة `words` التي تحتوي على لغات البرمجة (مثل "python" و "php" و "java" و "ruby") فهذا المعامل هو ما نبحث فيه عن العناصر المطابقة. أما `text` هو النص الذي نريد البحث عنه في بداية كل عنصر من عناصر `iterable` وفي هذا المثال، `text` هو الحرف "p" وهذا المعامل يحدد الشرط الذي نبحث عنه في العناصر. بالنسبة ل`finder` تأخذ `iterable` و `text`. وداخل `finder`، هناك دالة `find` التي تتحقق مما إذا كان أي عنصر في `iterable` يبدأ بالنص `text` أما `filter` يستخدم `find` لتصفية العناصر في `iterable` بناءً على الشرط المحدد والنتيجة النهائية هي قائمة بالعناصر التي تبدأ بالنص `text`.وهذا هو الكود بعد التصحيح: words = ["python", "php", "java", "ruby"] def finder(iterable, text): def find(item): return str(item).startswith(text) return list(filter(find, iterable)) result = finder(words, "p") print(result) والنتيجة النهائية ستكون: ['python', 'php'] وبهذا الشكل، الكود يقوم بإرجاع جميع العناصر في `words` التي تبدأ بالحرف "p". 1 اقتباس
السؤال
Muthanna Alqaisi
# ما فائدة iterable vs text
3 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.