آموزش شیوه های گوناگون فرمت کردن رشته ها(جلسه یازدهم آموزش پایتون)

شیوه های گوناگون فرمت کردن رشته ها در پایتون

شیوه ها در پایتون چیست؟ وقتی پایتون را به یاد می آورید و اینکه چگونه باید “یک روش واضح برای انجام کاری در پایتون وجود داشته باشد”؟ وقتی فهمیدید که چهار روش اصلی برای قالب بندی رشته در پایتون وجود دارد ، ممکن است از تعجب شاخ در بیاورید.

در این دوره آموزش پایتون ، چهار روش اصلی برای فرمت شیوه رشته در پایتون و همچنین نقاط قوت و ضعف آنها را خواهید آموخت. شما همچنین می توانید یک قانون ساده برای انتخاب بهترین روش قالب بندی رشته برای اهداف عمومی در برنامه های خود دریافت کنید. شما همچنین می توانید یک قانون ساده برای انتخاب بهترین شیوه ها در پایتون قالب بندی یا فرمت رشته برای اهداف عمومی در برنامه های خود دریافت کنید.

فرمت رشته های سفارشی در پایتون

تصویر ۱شیوه های فرمت کردن در پایتون

در ادامه شیوه ها در پایتون کلاس رشته داخلی توانایی انجام جایگزینی متغیرهای پیچیده و قالب بندی مقادیر را از طریق روش () توصیف شده در PEP 3101 فراهم می کند. کلاس Formatter در ماژول رشته به شما امکان می دهد رفتارهای قالب بندی رشته خود را با استفاده از همان پیاده سازی ایجاد و تنظیم کنید. به عنوان روش ساخته شده در قالب ().

رشته کلاس، قالب

کلاس Formatter دارای روش های عمومی زیر است:

فرمت (رشته_فرمت ، / ، * args ، ** kwargs)

روش اولیه API، این یک رشته فرمت و یک مجموعه دلخواه از استدلالهای موقعیتی و کلمات کلیدی را در بر می گیرد. این فقط یک بسته بندی است که vformat را فراخوانی می کند ()

در نسخه ۳٫۷ تغییر کرده است: آرگومان رشته ای قالب اکنون فقط موقعیتی است.

تصویر ۲ رشته ها در پایتون

vformat (قالب_ رشته ، args ، kwargs)

این توابع در پایتون در حقیقت کار فرمت بندی را انجام می دهند. این به عنوان یک تابع جداگانه برای مواردی که شما می خواهید در یک فرهنگ لغت از پیش تعریف شده از استدلال ها وارد شوید ، به جای باز کردن بسته بندی و بسته بندی مجدد فرهنگ لغت به عنوان آرگومان های جداگانه با استفاده از نحو * args و ** kwargs ، در معرض دید قرار گرفته است.

علاوه بر این ، Formatter تعدادی از روش ها را تعریف می کند که قرار است با زیر کلاس ها جایگزین شوند:

تجزیه (رشته_فرمت)

بر روی format_string ضربه بزنید و تعداد قابل تکراری از tupl ها را برگردانید (متن_متنویسی ، نام فیلد ، شکل_شکل ، تبدیل). این توسط vformat () برای شکستن رشته یا به متن تحت اللفظی یا به قسمتهای جایگزین استفاده می شود.

مقادیر در تاپل به طور مفهومی نمایانگر یک بازه از متن تحت اللفظی و به دنبال آن یک قسمت جایگزین واحد هستند. اگر هیچ متن لفظی وجود نداشته باشد (که اگر دو فیلد جایگزین به طور متوالی اتفاق بیفتد ممکن است اتفاق بیفتد) ، τότε literal_text یک رشته طول صفر خواهد بود.

اگر فیلد جایگزینی وجود نداشته باشد ، مقادیر name_name ، format_spec و تبدیل هیچ کدام نخواهد شد.

تصویر ۳ رشته درپایتون

get_field (نام_زمینه ، قوس ها ، کوارگ ها)

با توجه به نام field_name که توسط تجزیه () مشاهده شده است ، آن را به یک شی تبدیل کنید تا قالب بندی شود. یک تاپل (obj، used_key) برمی گرداند.

نسخه پیش فرض رشته هایی از فرم تعریف شده در PEP 3101 را می گیرد ، مانند “۰ [نام]” یا “label.title“.

args و kwargs همانطور که به vformat منتقل می شوند ().مقدار بازگشتی used_key همان معنی پارامتر کلیدی برای get_value () را دارد.

get_value (کلید ، args ، kwargs)

در ادامه شیوه ها در پایتون، مقدار فیلد داده شده را بازیابی کنید. آرگومان کلیدی یک عدد صحیح یا یک رشته خواهد بود. اگر یک عدد صحیح باشد ، نمایانگر آرگومان موقعیتی در args است. اگر یک رشته باشد ، نشان دهنده یک آرگومان نامگذاری شده در kwargs است.

پارامتر args به لیست آرگومان های موقعیتی برای vformat () و پارامتر kwargs به دیکشنری آرگومان های کلمه کلیدی تنظیم شده است.

برای نام فیلد مرکب ، این توابع در پایتون فقط برای اولین جز component نام فیلد فراخوانی می شوند. اجزای بعدی از طریق ویژگیهای عادی و عملیات نمایه سازی کنترل می شوند.

بنابراین به عنوان مثال ، عبارت فیلد “۰٫name” باعث می شود get_value () با یک آرگومان کلیدی ۰ فراخوانی شود. پس از بازگشت get_value () با فراخوانی تابع () getattr ، مشخصه نام جستجو می شود.

اگر شاخص یا کلمه کلیدی به موردی وجود دارد که وجود ندارد ، باید یک IndexError یا KeyError مطرح شود.

موسسه پایا پروژه به عنوان متصدی انجام پروژه های پایتون وظیفه ی خود می داند که در راستای آموزش برنامه نویسی پایتون گام های موثری  را بردارد. با توجه به اینکه یک دوره آموزشی برنامه نویسی پایتون مستلزم تمرین و تلاش بسیار است. اما این موسسه تلاش می کند سهم کوچکی در جهت یادگیری شما داشته باشد.

منبع

https://docs.python.org/3/library/string.html

 

 

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.
برای ادامه، شما باید با قوانین موافقت کنید

ده − پنج =

فهرست
WeCreativez WhatsApp Support
ساعت کاری 8 صبح الی 21 شب می باشد و از طریق شماره 09108760286 می توانید با ما در ارتباط باشید.
👋 سلام، چطور میتونم به شما کمک کنم؟