الفرق بين المراجعتين ل"Python/int/bit length"

من موسوعة حسوب
< Python‏ | int
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'تعيد هذه الدالة عدد البتات المطلوبة لتمثيل عدد صحيح بالصيغة الثنائية، مع استثناء ال...')
 
ط (استبدال النص - ':الدالة' ب':التابع')
 
(6 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة)
سطر 1: سطر 1:
تعيد هذه الدالة عدد البتات المطلوبة لتمثيل [[Python/int|عدد صحيح]] بالصيغة الثنائية، مع استثناء الإشارة والأصفار الأولية.
+
<noinclude>{{DISPLAYTITLE:التابع <code>int.bit_length()‎</code> في بايثون}}</noinclude>
 +
يعيد التابع <code>bit_length()‎</code> عدد البتات المطلوبة لتمثيل [[Python/int|عدد صحيح]] بالصيغة الثنائية، مع استثناء الإشارة والأصفار الأولية.
  
== البنية العامة ==
+
==البنية العامة==
 
<syntaxhighlight lang="python3">
 
<syntaxhighlight lang="python3">
 
x.bit_length()
 
x.bit_length()
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
==القيمة المعادة==
== القيمة المعادة ==
+
يعيد هذا التابع عدد البتات المطلوبة لتمثيل عدد صحيح بالصيغة الثنائية، مع استثناء الإشارة والأصفار الأولية.
تعيد هذه الدالة عدد البتات المطلوبة لتمثيل عدد صحيح بالصيغة الثنائية، مع استثناء الإشارة والأصفار الأولية.
+
==أمثلة==
 
+
يبيّن المثال التالي النتيجة المعادة من استخدام التابع مع عدد صحيح يمتلك إشارة سالبة:<syntaxhighlight lang="python3">
== أمثلة ==
 
يبيّن المثال التالي النتيجة المعادة من استخدام الدالة مع عدد صحيح يمتلك إشارة سالبة:<syntaxhighlight lang="python3">
 
 
>>> n = -37
 
>>> n = -37
 
>>> bin(n)
 
>>> bin(n)
سطر 17: سطر 16:
 
6
 
6
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
==توضيح==
 +
إذا توخينا الدقة، فإنّ القيمة المعادة من <code>x.bit_length()‎</code> في حال لم يكن <code>x</code> مساويًا للصفر هي [[Python/int|عدد صحيح]] موجب فريد <code>k</code> بموجب العلاقة الرياضية <code>‎2**(k-1)<= abs(x) < 2**k‎‎‎</code>. وبنفس الطريقة عندما تكون قيمة <code>[[Python/abs|abs]](x)</code>‎ صغيرة بما يكفي لامتلاك خوارزمية مقرّبة صحيحة، فإنّ <code>k</code> يساوي <code>‎1 + int(log(abs(x), 2))</code>‎. في حال كانت قيمة <code>x</code> مساوية للصفر فإنّ <code>x.bit_length()‎</code> تعيد القيمة <code>0</code>.
  
== توضيح ==
+
الدالة التالية مكافئة في عملها للتابع <code>bit_length()‎</code>:<syntaxhighlight lang="python3">
إذا توخينا الدقة، فإنّ القيمة المعادة من <code>x.bit_length()‎</code> في حال لم يكن <code>x</code> مساويًا للصفر هي [[Python/int|عدد صحيح]] موجب فريد <code>k</code> بموجب العلاقة الرياضية <code>‎2**(k-1)<= abs(x) < 2**k‎‎‎</code>. وبنفس الطريقة عندما تكون قيمة <code>abs(x)</code>‎ صغيرة بما يكفي لامتلاك خوارزمية مقرّبة صحيحة، فإنّ <code>k</code> يساوي <code>‎1 + int(log(abs(x), 2))</code>‎. في حال كانت قيمة <code>x</code> مساوية للصفر فإنّ <code>x.bit_length()‎</code> تعيد القيمة <code>0</code>.
 
 
 
الدالة التالية مكافئة في عملها للدالة <code>bit_length()‎</code>:<syntaxhighlight lang="python3">
 
 
def bit_length(self):
 
def bit_length(self):
 
s = bin(self) # التمثيل بالنظام الثنائي:
 
s = bin(self) # التمثيل بالنظام الثنائي:
سطر 27: سطر 25:
 
s = s.lstrip('-0b') # حذف الأصفار الأولية وإشارة السالب
 
s = s.lstrip('-0b') # حذف الأصفار الأولية وإشارة السالب
 
return len(s) # len('100101') --> 6
 
return len(s) # len('100101') --> 6
</syntaxhighlight>'''ملاحظة''': هذه الدالة جديدة في الإصدار 3.1 من اللغة.
+
</syntaxhighlight>'''ملاحظة''': هذا التابع جديدٌ في الإصدار 3.1 من اللغة.
 
+
==انظر أيضًا==
== انظر أيضًا ==
+
*[[Python/int|الأعداد الصحيحة في بايثون.]]
* [[Python/int|الأعداد الصحيحة في بايثون.]]
+
*التابع <code>[[Python/int/to bytes|int.to_bytes()‎]]</code>: إعادة مصفوفة من البايتات تمثّل عددًا صحيحًا.
 
+
*التابع <code>[[Python/int/from bytes|int.from_bytes()‎]]</code>: إعادة العدد الصحيح الذي تمثّله مصفوفة البايتات الممرّرة إلى التابع.
== مصادر ==
+
==مصادر==
* [https://docs.python.org/3/library/stdtypes.html#int.bit_length قسم الدالة bit_length في صفحة Types في توثيق بايثون الرسمي.]
+
*[https://docs.python.org/3/library/stdtypes.html#int.bit_length قسم التابع bit_length في صفحة Types في توثيق بايثون الرسمي.]
 
[[تصنيف:Python]]
 
[[تصنيف:Python]]
[[تصنيف:Python Function]]
+
[[تصنيف:Python Method]]
[[تصنيف:Python Built-in Functions]]
+
[[تصنيف:Python Types]]
 +
[[تصنيف:Python Int]]

المراجعة الحالية بتاريخ 11:59، 10 يونيو 2018

يعيد التابع bit_length()‎ عدد البتات المطلوبة لتمثيل عدد صحيح بالصيغة الثنائية، مع استثناء الإشارة والأصفار الأولية.

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

x.bit_length()

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

يعيد هذا التابع عدد البتات المطلوبة لتمثيل عدد صحيح بالصيغة الثنائية، مع استثناء الإشارة والأصفار الأولية.

أمثلة

يبيّن المثال التالي النتيجة المعادة من استخدام التابع مع عدد صحيح يمتلك إشارة سالبة:

>>> n = -37
>>> bin(n)
'-0b100101'
>>> n.bit_length()
6

توضيح

إذا توخينا الدقة، فإنّ القيمة المعادة من x.bit_length()‎ في حال لم يكن x مساويًا للصفر هي عدد صحيح موجب فريد k بموجب العلاقة الرياضية ‎2**(k-1)<= abs(x) < 2**k‎‎‎. وبنفس الطريقة عندما تكون قيمة abs(x)‎ صغيرة بما يكفي لامتلاك خوارزمية مقرّبة صحيحة، فإنّ k يساوي ‎1 + int(log(abs(x), 2))‎. في حال كانت قيمة x مساوية للصفر فإنّ x.bit_length()‎ تعيد القيمة 0.

الدالة التالية مكافئة في عملها للتابع bit_length()‎:

def bit_length(self):
s = bin(self) # التمثيل بالنظام الثنائي:
# bin(-37) --> '-0b100101'
s = s.lstrip('-0b') # حذف الأصفار الأولية وإشارة السالب
return len(s) # len('100101') --> 6

ملاحظة: هذا التابع جديدٌ في الإصدار 3.1 من اللغة.

انظر أيضًا

مصادر