تقنية

expandtabs في بايثون: لماذا لا تعني 4 أربع مسافات دائمًا؟

expandtabs(4): بعد a ثلاث مسافات، وبعد abc مسافة واحدة.
عدد المسافات يعتمد على الموضع.

expandtabs تكمل المسافات حتى محطة الجدولة التالية؛ العدد يعتمد على العمود الحالي. [1]

الخلاصة السريعة

tabsize=4 يحدد تباعد المحطات، لا أربع مسافات لكل علامة. [1]

  • expandtabs تكمل المسافات حتى محطة الجدولة التالية؛ العدد يعتمد على العمود الحالي. [1]
  • نكتب \t للجدولة؛ المحطات كل أربعة محارف. [1]
  • مثال مؤلف شُغّل على CPython 3.12.14: a="a\tb"؛ a.expandtabs(4) تعطي "a b"، بثلاث مسافات. [1]
  • b="abc\td"؛ b.expandtabs(4) تعطي "abc d"، بمسافة واحدة. [1]
  • عمودا الجدولة 1 و3؛ كلاهما يصل إلى 4، والنصان الأصليان لا يتغيران. [1]

المحطة التالية

expandtabs تكمل المسافات حتى محطة الجدولة التالية؛ العدد يعتمد على العمود الحالي. [1]

علامة الجدولة

نكتب \t للجدولة؛ المحطات كل أربعة محارف. [1]

ثلاث مسافات

مثال مؤلف شُغّل على CPython 3.12.14: a="a\tb"؛ a.expandtabs(4) تعطي "a b"، بثلاث مسافات. [1]

a.expandtabs(4) -> "a b" [1]

العمود 1 يحتاج ثلاث مسافات إلى 4؛ العمود 3 يحتاج واحدة.
نرقم الأعمدة من صفر.

مسافة واحدة

b="abc\td"؛ b.expandtabs(4) تعطي "abc d"، بمسافة واحدة. [1]

b.expandtabs(4) -> "abc d" [1]

عمودا الجدولة 1 و3؛ كلاهما يصل إلى 4، والنصان الأصليان لا يتغيران. [1]

المراجع

  1. Python — expandtabs

للتوسع: حفظ الأصفار الأولى.

أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.