ترفند پایتونی 5 – String Formatting

تا به الان در پایتون 4 روش برای ایجاد و فرمت رشته های متنی وجود داره! تعداد زیادیه و قراره به بررسی این روش ها بپردازیم. بذارید با یک مثال کمی روشن تر کنم که قراره چی رو استفاده کنیم؟ و چه استفاده ای ازش داشته باشیم؟ فرض کنید دو متغیر با نام ها و مقادیر زیر وجود داره. یکی errorno که شماره خطا رو به ما نشون میده و name هم که نام دلخواه و مورد نظر ما و شما…

 

1- روش قدیمی، استفاده از % (String Formatting Operator)

فرم کلی این روش به صورت زیر:

همه بخش ها اختیاری هستند به غیره Conversion Type و صد البته کاراکتر %. رایج ترین فرمت های مورد استفاده عبارتند از :

  • d% : اعداد صحیح
  • f% : اعداد اعشاری (شناور)
  • %f. : مشخص کردن تعداد اعشار مثلا %3f. تعداد سه رقم اعشار رو نشون میده
  • x% : تبدیل عدد صحیح به hex
  • s% : نمایش هر object به صورت متن (تبدیل مقادیر به str)

برای مطالعه بیشتر به documentation مراجعه کنید.

برای بخش اول مثال، از s% استفاده می کنیم تا مقدار متغیر name رو جایگزین s% کنیم. به صورت زیر :

که خروجی برابر خواهد بود با : Hello, Developer

و بخش دوم تبدیل مقدار عدد صحیح  errno به فرمت hex :

و خروجی برابر خواهد بود با : badc0ffee

پس در نتیجه :

خروجی مد نظر یعنی Hey Developer, there is a 0xbadc0ffee error! رو خواهیم داشت البته یه روش دیگه هم استفاده از mapping و dict هستش.

 

2- روش جدیدتر، format

روش جدیدتر و البته تلفیق شده با روش قبل که کد رو خواناتر می کنه استفاده از تابع format هستش به این صورت :

و

که x: همون کار تبدیل به hex رو انجام میده. می تونید کد بالا رو به صورت زیر هم بنویسید که نه نیازی به قسمت ابتدایی فرمت hex نخواهد بود و نه الزامی برای نام گذاری دارید :

اعداد 0 و 1 نوشتنشون الزامی نیست فقط برای خواناتر کردن کد نشوته شدن ولی اگر می نویسید حتما از صفر و به ترتیب باید بنویسید.

 

3- استفاده از f یا Literal String Interpolation

این روش از پایتون 3.6 اضافه شده. در این روش در ابتدای رشته متنی از یک f استفاده می کنیم. مزیت این روش اینه که اجازه میده تا فرمت رو داخل رشته متنی بنویسید.

و یا حتی محاسبات رو در دل متن انجام بدید.

که خواهد شد : Five plus ten is 15 and not 30

و در نهایت کد مثال آغازین :

 

4- استفاده از Template Strings

و روش آخر که با نوشتن یک الگو مقادیر رو درون template قرار می دهیم.

 

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

نشانی ایمیل شما منتشر نخواهد شد.

Fill out this field
Fill out this field
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست