الدالة max()
في بايثون
تعيد الدّالة max()
أكبر عنصر من عناصر كائن قابل للتّكرار أو أكبر مُعامل من مُعاملين أو أكثر.
البنية العامة
max(iterable, *[, key, default]) # كائن قابل للتّكرار كمُعامل أوّل
max(arg1, arg2, *args[, key]) # مُعاملات منفردة
المعاملات
iterable
الكائن القابل للتّكرار المرغوب الحصول على أكبر عناصره.
key
مُعامل اختياريّ يُمرّر بكلمته المفتاحيّة (keyword-only argument) يُمثّل دالّة تقبل مُعاملًا واحدًا لتُستخدم في ترتيب العناصر المُعطاة مثل الدّالة list.sort()
.
default
مُعامل اختياريّ يُمرّر بكلمته المفتاحيّة ويُمثّل القيمة التي ستُعاد افتراضيًّا إن كان الكائن القابل للتّكرار المُعطى فارغًا.
إن كان الكائن القابل للتّكرار المُعطى فارغًا ولم تُمرّر قيمة للمُعامل default
، فسيُطلق استثناء ValueError.
القيمة المعادة
أكبر عنصر من العناصر المُعطاة.
إن كان هناك أكثر من عنصر قصويّ واحد، فسيُعاد أولها. وهذا متوافق مع أدوات التّرتيب الحافظة للتّوازن (sort-stability preserving tools) مثل الطرّيقتين الآتيتين (انظر الدّالة sorted
والوحدة heapq
):
sorted(iterable, key=keyfunc, reverse=True)[0]
heapq.nlargest(1, iterable, key=keyfunc)
أمثلة
المثال التّالي يوضّح كيفيّة عمل هذه الدّالة:
>>> max(0, 2, 4, 3) # معاملات مُتعدّدة
4
>>> max([0, 2, 4, 3]) # قائمة
4
>>> max([], default=0) # قائمة فارغة والقيمة الافتراضيّة هي صفر
0