الفرق بين المراجعتين لصفحة: «Python/max»
إضافة الصّفحة |
لا ملخص تعديل |
||
سطر 13: | سطر 13: | ||
=== <code>key</code> === | === <code>key</code> === | ||
مُعامل اختياريّ يُمرّر بكلمته المفتاحيّة (keyword-only argument) يُمثّل دالّة تقبل مُعاملًا واحدًا لتُستخدم في ترتيب العناصر المُعطاة مثل الدّالة <code>list.sort()</code>. | مُعامل اختياريّ يُمرّر بكلمته المفتاحيّة (keyword-only argument) يُمثّل دالّة تقبل مُعاملًا واحدًا لتُستخدم في ترتيب العناصر المُعطاة مثل الدّالة <code>[[Python/list/sort|list.sort()]]</code>. | ||
=== <code>default</code> === | === <code>default</code> === | ||
مُعامل اختياريّ يُمرّر بكلمته المفتاحيّة ويُمثّل القيمة التي ستُعاد افتراضيًّا إن كان الكائن القابل للتّكرار المُعطى فارغًا. | مُعامل اختياريّ يُمرّر بكلمته المفتاحيّة ويُمثّل القيمة التي ستُعاد افتراضيًّا إن كان الكائن القابل للتّكرار المُعطى فارغًا. | ||
إن كان الكائن القابل للتّكرار المُعطى فارغًا ولم تُمرّر قيمة للمُعامل <code>default</code>، فسيُطلق استثناء [[Python/ValueError|ValueError]]. | إن كان الكائن القابل للتّكرار المُعطى فارغًا ولم تُمرّر قيمة للمُعامل <code>default</code>، فسيُطلق استثناء [[Python/ValueError|ValueError]]. | ||
== القيمة المعادة == | == القيمة المعادة == | ||
أكبر عنصر من العناصر المُعطاة. | أكبر عنصر من العناصر المُعطاة. | ||
إن كان هناك أكثر من عنصر قصويّ واحد، فسيُعاد أولها. وهذا متوافق مع أدوات التّرتيب الحافظة للتّوازن (sort-stability preserving tools) مثل الطرّيقتين الآتيتين (انظر الدّالة sorted والوحدة heapq): | |||
إن كان هناك أكثر من عنصر قصويّ واحد، فسيُعاد أولها. وهذا متوافق مع أدوات التّرتيب الحافظة للتّوازن (sort-stability preserving tools) مثل الطرّيقتين الآتيتين (انظر الدّالة <code>sorted</code> والوحدة <code>[[Python/heapq|heapq]]</code>): | |||
<syntaxhighlight lang="python3"> | <syntaxhighlight lang="python3"> | ||
sorted(iterable, key=keyfunc, reverse=True)[0] | sorted(iterable, key=keyfunc, reverse=True)[0] | ||
سطر 27: | سطر 29: | ||
heapq.nlargest(1, iterable, key=keyfunc) | heapq.nlargest(1, iterable, key=keyfunc) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== أمثلة == | == أمثلة == | ||
المثال التّالي يوضّح كيفيّة عمل هذه الدّالة: | المثال التّالي يوضّح كيفيّة عمل هذه الدّالة: | ||
<syntaxhighlight lang="python3"> | <syntaxhighlight lang="python3"> | ||
>>> max(0, 2, 4, 3) | >>> max(0, 2, 4, 3) # معاملات مُتعدّدة | ||
4 | 4 | ||
>>> max([0, 2, 4, 3]) | >>> max([0, 2, 4, 3]) # قائمة | ||
4 | 4 | ||
>>> max([], default=0) | >>> max([], default=0) # قائمة فراغة والقيمة الافتراضيّة هي صفر | ||
0 | 0 | ||
</syntaxhighlight> | </syntaxhighlight> |
مراجعة 19:16، 6 مايو 2018
تعيد الدّالة 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