به آموزشگاه مجازی سینا خوش آمدید!

آموزش فرمت دهی به رشته ها در پایتون

امتیاز
(1)

همان طور که در فصلِ متغیرها در پایتون، آموختیم، ما نمی توانیم رشته ها و اعداد را مانند مثال زیر با یکدیگر ترکیب کنیم:

مثال شماره 1

age = 36
#این یک خطا ایجاد خواهد کرد:
txt = "My name is John, I am " + age
print(txt)

نتیجه:

Traceback (most recent call last):
  File "demo_string_format_error.py", line 2, in <module>
    txt = "My name is John, I am " + age
TypeError: must be str, not int 
امتحان کنید

اما می توانیم با استفاده از اف-استرینگ(f-strings) یا متد format() رشته ها را با یکدیگر ترکیب کنیم. 


آموزش اف-استرینگ(F-String) در پایتون

اف-استرینگ در پایتون 3.6 معرفی شده است و اکنون استفاده از آن، برای فرمت دهی به رشته ها، ترجیح داده می شود. 

برای مشخص کردن یک رشته بعنوان اف-استرینگ، به سادگی یک حرف f را در جلوی یک رشته قرار دهید و برای اضافه کردن متغیرها یا دیگر عملیات در این رشته، از آکولادها { } بعنوان جانگهدار استفاده کنید:

مثال شماره 2

ایجاد یک اف-استرینگ:

age = 36
txt = f"My name is John, I am {age}"
print(txt)

نتیجه:

My name is John, I am 36
امتحان کنید

جانگهدارها(Placeholders) و اصلاح کننده ها(Modifiers) در پایتون

یک جانگهدار می تواند حاوی متغیرها، عملیات ها، تابع ها و اصلاح کننده ها(modifiers) باشد، تا مقادیر را فرمت دهی کند. 

مثال شماره 3

اضافه کردن یک جانگهدار برای متغیر price : 

price = 59
txt = f"The price is {price} dollars"
print(txt)

نتیجه:

The price is 59 dollars
امتحان کنید

یک جانگهدار(placeholder) می تواند حاوی یک اصلاح کننده(modifier) باشد تا مقداری را فرمت دهی کند. برای اضافه کردن یک اصلاح کننده، از یک علامت دونقطه(:) استفاده می کنیم و پس از آن یک نوعِ قانونیِ فرمت دهی، مانند .2f قرار می دهیم که به معنی یک عدد ممیز ثابت(fixed point) با دو رقم اعشار می باشد. 

مثال شماره 4

نمایش price با دو رقم اعشار:

price = 59
txt = f"The price is {price:.2f} dollars"
print(txt)

نتیجه:

The price is 59.00 dollars
امتحان کنید

یک جانگهدار(placeholder) می تواند حاوی کدهای پایتون، مانند عملیات های ریاضی نیز باشد:

مثال شماره 5

انجام یک عملیات ریاضی در داخل جانگهدار و برگرداندن(return) نتیجه:

txt = f"The price is {20 * 59} dollars"
print(txt)

نتیجه:

The price is 1180 dollars
امتحان کنید

منبع: https://www.w3schools.com/python

 

  • بازدید: 86

نوشتن دیدگاه

لطفا نظرات خود را بیان کنید. به سوالات در سریع ترین زمان پاسخ داده خواهد شد.اما به نکات زیر توجه کنید:
1. سعی کنید نظرات شما مرتبط با مقاله ی مورد نظر باشد، در غیر این صورت پاسخ داده نخواهد شد.
2. سوالات خود را به صورت کوتاه بیان کنید و از پرسیدن چند سوال به طور همزمان خودداری کنید.
3. سوال خود را به طور واضح بیان کنید و از کلمات مبهم استفاده نکنید.

ارسال