الفرق بين المراجعتين لصفحة: «Python/bytes/expandtabs»
لا ملخص تعديل |
|||
سطر 26: | سطر 26: | ||
*التابع <code>[[Python/bytes/isspace|bytes.isspace()]]</code>: التحقق ممّا إذا كانت جميع البايتات في التسلسل الثنائي هي بايتات المسافة البيضاء في ترميز ASCII، ومن أنّ التسلسل ليس فارغًا. | *التابع <code>[[Python/bytes/isspace|bytes.isspace()]]</code>: التحقق ممّا إذا كانت جميع البايتات في التسلسل الثنائي هي بايتات المسافة البيضاء في ترميز ASCII، ومن أنّ التسلسل ليس فارغًا. | ||
==مصادر== | ==مصادر== | ||
*[https://docs.python.org/3/library/stdtypes.html#bytes.expandtabs قسم expandtabs في صفحة Types في توثيق بايثون الرسمي.] | *[https://docs.python.org/3/library/stdtypes.html#bytes.expandtabs قسم expandtabs في صفحة Types في توثيق بايثون الرسمي.] | ||
[[تصنيف:Python]] | [[تصنيف:Python]] | ||
[[تصنيف:Python | [[تصنيف:Python Method]] | ||
[[تصنيف:Python | [[تصنيف:Python Types]] | ||
[[تصنيف:Python Bytes]] |
مراجعة 09:15، 9 يونيو 2018
يحوّل التابع جميع علامات الجدولة في ترميز ASCII إلى مسافة بيضاء واحدة أو أكثر في الترميز ذاته.
البنية العامة
bytes.expandtabs(tabsize=8)
المعاملات
tabsize
يحدّد مواقع علامات الجدولة في التسلسل الثنائي (القيمة الافتراضية هي 8
، فتكون مواقع علامات الجدولة في الأعمدة 0
، 8
، 16
وهكذا).
القيمة المعادة
يعيد التابع expandtabs()
نسخة من التسلسل الثنائي بعد تحويل جميع علامات الجدولة بترميز ASCII إلى مسافة بيضاء واحدة أو أكثر من الترميز ذاته، وذلك بالاعتماد على العمود الحالي وحجم علامة الجدولة المحدد بواسطة المعامل tabsize
.
توضيح
يعمل التابع عن طريق جعل العمود الحالي هو العمود 0
ثم فحص التسلسل الثنائي بايتًا بايتًا. فإن كان البايت هو علامة جدولة بترميز ASCII (b'\t'
) تضاف مسافة ASCII واحدة أو أكثر إلى النتيجة وتستمر الإضافة إلى أن يصبح العمود الحالي مساويًا لموقع علامة الجدولة التالية (لا ينسخ التابع علامة الجدولة إلى التسلسل الجديد).
إن وصل التابع في عملية الفحص إلى بايت السطر الجديد (b'\n'
) أو (b'\r'
) في ترميز ASCII فإنّه ينسخه ويعيد ضبط العمود الحالي إلى الصفر.
أما بقية البايتات فتنسخ كما هي دون تغيير، ويُزاد العمود الحالي بمقدار 1
بصرف النظر عن كيفية تمثيل البايت عند الطباعة.
أمثلة
يوضح المثال التالي طريقة استخدام هذا التابع والنتائج المعادة:
>>> b'01\t012\t0123\t01234'.expandtabs()
b'01 012 0123 01234'
>>> b'01\t012\t0123\t01234'.expandtabs(4)
b'01 012 0123 01234'
انظر أيضًا
- البايتات في بايثون.
- التابع
bytes.isspace()
: التحقق ممّا إذا كانت جميع البايتات في التسلسل الثنائي هي بايتات المسافة البيضاء في ترميز ASCII، ومن أنّ التسلسل ليس فارغًا.