مع max_lines=1، تتحقق textwrap من اللاحقة؛ قد ترفع ValueError حتى مع نص يسع width. [1] [2]
الخلاصة السريعة
لا؛ اختبارنا يرفع ValueError. [1] [2]
- مع max_lines=1، تتحقق textwrap من اللاحقة؛ قد ترفع ValueError حتى مع نص يسع width. [1] [2]
- على CPython 3.12.14، النص bud طوله 3؛ نستخدم width=4 وplaceholder="....." بطول 5، مع max_lines=1. [1] [2]
- wrap ترفع ValueError؛ فحص طول اللاحقة يسبق بناء السطور، وليس مشروطًا بالحاجة إلى اختصار هذا النص. [1] [2]
- تحكم بالنص والعرض واللاحقة نفسها: نحذف max_lines=1، فيستعمل افتراضي None دون حد للسطور. [1] [2]
- control تعيد قائمة فيها bud كاملة، بطول 3؛ اللاحقة غير مستخدمة هنا. نختبر نص ASCII دون هامش أو فراغات أو قياس خط بالبكسل. [1] [2]
فحص قبل الاختصار
مع max_lines=1، تتحقق textwrap من اللاحقة؛ قد ترفع ValueError حتى مع نص يسع width. [1] [2]
نص قصير ولاحقة أطول
على CPython 3.12.14، النص bud طوله 3؛ نستخدم width=4 وplaceholder="....." بطول 5، مع max_lines=1. [1] [2]
موضع الخطأ
wrap ترفع ValueError؛ فحص طول اللاحقة يسبق بناء السطور، وليس مشروطًا بالحاجة إلى اختصار هذا النص. [1] [2]
from textwrap import wrap try:wrap("bud",width=4,max_lines=1,placeholder=".....") except ValueError:print("ValueError") [1] [2]

غياب حد السطور والتحكم
تحكم بالنص والعرض واللاحقة نفسها: نحذف max_lines=1، فيستعمل افتراضي None دون حد للسطور. [1] [2]
control=wrap("bud",width=4,placeholder=".....") print(control) print(list(map(len,control))) [1] [2]
control تعيد قائمة فيها bud كاملة، بطول 3؛ اللاحقة غير مستخدمة هنا. نختبر نص ASCII دون هامش أو فراغات أو قياس خط بالبكسل. [1] [2]
المراجع
للتوسع: لغات البرمجة.
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
