في عملية تعلم السلاسل، تحدثنا عن الكثير من طرق الاستخدام من قبل. في الاستخدام الفعلي، غالبًا ما نحتاج إلى تنسيق السلاسل وإخراج النتائج التي نحتاجها من خلال التنسيق.
تنسيق السلسلة هو إنشاء مسافة أولاً، ثم ترك بعض المواضع في هذه المساحة، ثم ملء المحتوى المقابل وفقًا للاحتياجات. المواضع المتبقية هنا تعادل العناصر النائبة. هناك طريقتان لتنسيق السلسلة. أحدهما هو استخدام عامل التشغيل % والآخر هو استخدام طريقة التنسيق ().
يعد عامل التشغيل % مناسبًا جدًا عندما نقوم بتنسيق السلاسل، ويكون تركيبه كما يلي:
'%[+][-][0][.m] حرف التنسيق'%iteration
1) التكرار هو المحتوى الذي نريد ملؤه، والتنسيق بعد أول % هو التنسيق الذي نريد اختياره.
2)[+] هي المحاذاة الصحيحة و"+" هي معلمة يمكننا ملؤها. يمثل الرقم عرض المحاذاة.
3)[-] هو المحاذاة اليسرى و'-' هي معلمة يمكننا ملؤها. يمثل الرقم عرض المحاذاة.
4) تعتبر m في [.m] دقة اختيارية، تشير إلى عدد المنازل العشرية التي يجب الاحتفاظ بها بعد العلامة العشرية.
5) حرف التنسيق هو التنسيق الذي نحتاج إلى تحديده، وأنواعه الشائعة هي السلسلة %s، والعدد الصحيح العشري %d، والحرف المفرد %c، ورقم النقطة العائمة %f، والرقم السداسي العشري %x، والرقم الثماني %o، والحرف%. %.
قد يكون فهم عامل التشغيل % مجردًا نسبيًا، فلنتعرف عليه من خلال الأمثلة. ما نستخدمه عادة هو إخراج رقم الفاصلة العائمة، مع الاحتفاظ بمنزلتين عشريتين بعد العلامة العشرية، ويكون الرمز كما يلي:
>>>my_str=66666.66666 >>>print('التنسيق الذي يحتوي على منزلتين عشريتين هو: %.2f'%my_str) التنسيق الذي يحتوي على منزلتين عشريتين هو: 66666.67
عند الاحتفاظ بالكسور العشرية، سيتم تنفيذ عملية التقريب تلقائيًا. عند استخدامها، انتبه إلى شكلها. يمكننا اختيار واحد أو أكثر لدمجها معًا لتنسيق السلسلة. أعلاه نستخدم عملية التنسيق، وجزء التنسيق هو '%. 2f'، ثم استخدم % في نهاية السلسلة لتوصيل السلسلة المقابلة، والتي تعادل مباشرة المحتوى المقابل.
دعونا نقدم استخدام المحاذاة مرة أخرى:
>>>foriinrange(5):...print('%-5d'%i,end='')#محاذاة لليسار...طباعة('%5d'%i)#محاذاة لليمين...0011223344
5 هو عرض محاذاة الكود. نستخدم المحاذاة اليسرى واليمنى. يتم محاذاة العمود الأول إلى اليسار ويكون العرض 5. ثم يتم إخراج i مرة أخرى دون التفاف .
يتعلق الأمر بالمشغل %. يمكنك إتقان هذه المعرفة بشكل أسرع من خلال ممارستها بنفسك أدناه.
توفر طريقة format() المزيد من الطرق لتنسيق السلاسل، وصياغتها الأساسية هي استبدال '%' بـ '{}' و':'. تنسيق بناء الجملة الخاص به هو:
تنسيق str ()
دعونا ننظر إلى ذلك من خلال مثال:
namea='Xiao Ming' nameb='Xiao Hua' print('{} هو صديق {} الجيد'.format(namea,nameb))
هذا المثال هو أبسط طريقة لاستخدامه، ولكن بما أن هذه الطريقة قد تم طرحها لاحقًا، فيجب أن يكون لها مميزاتها، فلنقدم طريقتها المحددة أدناه.
في العنصر النائب يمكن أن يكون الهيكل:
{[الفهرس[:[ملء]محاذاة][العرض][#][.k][النوع]]}
دعونا نلقي نظرة على هذا الهيكل من خلال الرسم التخطيطي:
يحتوي المثال أعلاه فقط على '{}' بسيط. إذا قمنا بتعديله، يمكننا استخدام الهياكل المذكورة أعلاه واحدة تلو الأخرى:
1) الفهرس هو موضع الفهرس. يمكننا أن نعطيه رقمًا لتحديد موضع الفهرس للكائن في القائمة. تبدأ قيمة الفهرس من 0. إذا لم تكن هناك قيمة فهرس، فهي بالترتيب من اليسار إلى اليمين. مثل المثال أعلاه، إذا أضفنا قيمة الفهرس:
namea='Xiao Ming' nameb='Xiao Hua' print('{1} هو صديق جيد لـ {0}'.format(namea,nameb))
ثم تم تبادل مواقفهم.
2) ':' هو شرط أساسي للاستخدام اللاحق، ويجب عليك إضافة ':' عند استخدام العمليات اللاحقة.
3) يمكن للتعبئة تحديد معلمة حسب عدد الأحرف لملء الفراغات.
4) يتيح لك العرض اختيار معلمة لتحديد الطول.
5) يمكن للمحاذاة اختيار معلمة كطريقة للمحاذاة، والمعلمات هي '>' للمحاذاة لليمين، و'<' للمحاذاة لليسار، و'=' للمحاذاة لليمين، ولكن يتم وضع الرمز في أقصى اليسار، و'^'. يمثل التمركز.
دعونا نلقي نظرة على مثال:
>>>my_str='dotcpp'>>>print('{:@>10}'.format(my_str))@@@@dotcpp
في هذا المثال، اخترنا المحاذاة الصحيحة، ثم قمنا بتعيين العرض على 10، واستبدلنا أحرف المسافة البيضاء بالرمز @.
6)'#' هي البادئة الأساسية.
7).k في k هي معلمة اختيارية، تُستخدم لتمثيل الرقم المحتفظ به بعد العلامة العشرية.
8) يمكن للنوع تحديد المعلمات لتحديد النوع، وتتضمن المعلمات شائعة الاستخدام S لتمثيل سلسلة، وD لتمثيل عدد صحيح عشري، و% لتمثيل النسبة المئوية، وf أو F لتمثيل رقم الفاصلة العائمة.
أدناه نستخدم مثالاً لاستخدام الطرق المذكورة أعلاه.
my_str='dotcpp'#قم أولاً بتعريف سلسلتين my_string=123456.654321print('my_str:{1:!^20s}nmystring:{0:$^20.2f}'.format(my_string,my_str))
الإخراج هو:
my_str:!!!!!!dotcpp!!!!!!!mystring:$$$$$123456.65$$$$$$
بالنسبة إلى my_str، فإن "1" هو موضع الفهرس الخاص به، ويحل "!" محل أحرف المسافة البيضاء، ويمثل "^" الموضع المركزي، و20 هو العرض، و"s" هو نوع السلسلة.
بالنسبة إلى my_string، فإن "0" هو موضع الفهرس الخاص بها، ويحل "$" محل حرف الحزمة الفارغة، ويمثل "^" الموضع المركزي، وعرض 20 بت، ويمثل ".2" منزلتين عشريتين بعد العلامة العشرية، ويمثل "f" نوع النقطة العائمة.
هذا كل ما في الأمر بالنسبة للحديث عن الأوتار، حيث تُستخدم الأوتار بشكل متكرر جدًا، لذلك يجب على الجميع التدرب عليها وإتقانها من خلال التمارين.