الدالة hash()‎ في بايثون

من موسوعة حسوب
مراجعة 19:17، 3 مايو 2018 بواسطة عبد-الهادي-الديوري (نقاش | مساهمات) (←‏ملاحظات)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تعيد الدّالة hash()‎ قيمة تجزئة (hash) الكائن المُعطى (إن امتلك الكائن تجزئةً معروفة).

البنية العامة

hash(object)

المعاملات

object

الكائن المُراد الحصول على تجزئته.

القيمة المعادة

عدد صحيح يُمثّل قيمة تجزئة الكائن.

أمثلة

المثال التّالي يوضّح كيفيّة عمل هذه الدّالة:

>>> hash(1)
1
>>> hash(1.0)
1
>>> hash('x') # تجزئة محرف واحد مباشرةً
5693259701801553312
>>> a = 'x'
>>> hash(a) # تجزئة المحرف نفسه بعد تخزينه في مُتغيّر
5693259701801553312

ملاحظات

  • تُستخدم التّجزئات لمُقارنة مفاتيح القواميس بسرعة أثناء بحث في القاموس.
  • تملك القيم العدديّة التي تُساوي بعضها البعض نفس قيمة التّجزئة حتى ولو كانت من أنواع مُختلفة، مثل العدد الصّحيح 1 والعدد العشريّ 1.0 (انظر المثال أعلاه).
  • بالنّسبة للكائنات التّي تُعرّف التّابع الخاصّ ‎_‎_‎hash‎_‎_‎()‎ ، فالدّالة ‎‎hash‎‎‎()‎ تقطع من القيمة المُعادة حسب عرض البتّات (bit width) الخاصّ بالجهاز المُضيف. انظر التّابع الخاصّ ‎_‎_‎hash‎_‎_‎‎()‎ للاستزادة.

انظر أيضًا

مصادر