فرمت دهی رشته ها در پایتون با تابع Format

تابع format در پایتون  چگونه کار می کند ؟ علاوه بر استفاده از عملگر ٪ برای فرمت دهی رشته‌ها ، پایتون متد دیگری برای فرمت دهی رشته‌ها را به ارایه می‌دهد (با استفاده از تابع fomat)

تابع format در پایتون

سینتکس تابع format در پایتون به صورت زیر می‌باشد :

”string to be formatted”.format(مقادیر یا متغیرهایی برای درج در رشته که با کاما جدا می‌شوند )

وقتی که متد format استفاده می‌کنیم دیگر از نگهدارنده های s% یا f% یا d% استفاده نمی‌کنیم . در عوض از آکولاد به صورت زیر استفاده می‌کنیم :

message = ‘The price of this {0:s} laptop is {1:d} USD and the exchange rate is {2:4.2f} USD to 1 EUR’.format(‘Apple’, 1299, 1.235235245)

درون آکولاد ابتدا جایگاه پارامتر مورد استفاده را می نویسیم سپس دو نقطه . پس از دو نقطه فرمت دهنده را وارد می‌کنیم . درون آکولاد نبایستی فاصله‌ای قرار داد .
وقتی که عبارت (‘Apple’, 1299, 1.235235245) را می نویسیم ، در‌واقع سه پارامتر را به تابع format پاس می‌دهیم .پارامترها داده‌هایی هستند که متد به منظور انجام وظایفش به آن‌ها نیاز دارد . پارامتر Apple دارای دارای موقعیت 0 می‌باشد ، پارامتر ۱۲۹۹ دارای موقعیت 1 و پارامتر 1.235235245 دارای موقعیت 2 می‌باشد . موقعیت ها از ایندکس صفر شروع می‌شوند .

وقتی که می نویسیم {0:s} از مفسر می‌خواهیم که این پارامتر را با موقعیت پارامتری ۰ که یک مقدار رشته ای است جایگزین کنیم (فرمت دهنده ما s می‌باشد چون مقدار ما رشته ای است).

وقتی که ما می نویسیم {d:1} به پارامتر موجود در موقعیت ۱ که یک مقدار عددی است (فرمت دهنده ما هم d می باشد) اشاره می‌کنیم .
وقتی عبارت {2:4.2f} را می نویسیم . به پارامتر موقعیت ۲ که مقداری اعشاری است اشاره می‌کنیم و می‌خواهیم که با دو جایگاه اعشاری و طول کل ۴ رشته فرمت دهی کنیم

اگر که مقدار message را چاپ کنیم خروجی به صورت زیر خواهد بود :

The price of this Apple laptop is 1299 USD and the exchange rate is 1.24 USD to 1 EUR

نکته : اگر که نمی‌خواهیم رشته را فرمت دهی کنید و فقط می‌خواهید جایگذاری کنید می‌توانید به صورت زیر بنویسیم :

message = ‘The price of this {} laptop is {} USD and the exchange rate is {} USD to 1 EUR’.format(‘Apple’, 1299, 1.234234245)

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

متد ()format برای مبتدی ها ممکن است گیج‌کننده باشد . در حقیقت فرمت دهی رشته‌ها می‌تواند بیش از این پیچیده باشند ولی آنچه در اینجا گفتیم در اکثر موارد و بیشتر اهداف کارساز خواهد بود . برای درک بهتر از متد ()format برنامه زیر را امتحان کنید :

message1 = ‘{0} is easier than {1}’.format(‘Python’, ‘Java’)
message2 = ‘{1} is easier than {0}’.format(‘Python’, ‘Java’)
message3 = ‘{:10.2f} and {:d}’.format(1.234234234, 12)
message4 = ‘{}’.format(1.234234234)
print (message1)
#You will get ‘Python is easier tha Java’

print (message2)
#You will get ‘Java is easier Python’

print (message3)
#You will get ‘ 1.23 and 12’
#You dont need to indicate the positions of the parameters.

print (message4)
#You will get ‘1.234234234. no formatting is done.’

فرمت دهی رشته ها در پایتون با تابع Format

خروجی به صورت زیر خواهد بود :

فرمت دهی رشته ها در پایتون با تابع Format

صاحب امتیاز نت آموز : نویسنده , مدرس و متخصص در زمینه امنیت شبکه های رایانه ای

نوشته های مرتبط

نظرات غیرمرتبط با موضوع این مطلب تایید نخواهند شد. این سوالات را می توانید از بخش پشتیبانی آموزشی مطرح کنید

پاسخ دهید

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