دوره‌ها / آموزش پایتون (Python) / فرمت‌دهی رشته (Python String Formatting)

فرمت‌دهی رشته (Python String Formatting)

15 دقیقه Article

فرمت‌دهی رشته‌ها: خروجی‌های زیبا و دقیق ✨📝

در پروژه‌های واقعی، شما به ندرت فقط یک متن ثابت را چاپ می‌کنید. معمولاً نیاز دارید متغیرها را با متن‌های توضیحی ترکیب کنید. پایتون تکامل زیادی در این مسیر داشته است.

۱. عصر مدرن: F-Strings (پایتون 3.6+)

این روش سریع‌ترین، خواناترین و محبوب‌ترین روش فرمت‌دهی است. با گذاشتن حرف f در ابتدای رشته، جادو آغاز می‌شود.

price = 59
txt = f"The price is {price:.2f} dollars"
print(txt)
# محاسبه در رشته
txt2 = f"The product is {20 * 15}"
print(txt2)

۲. فرمت‌دهی اعداد (Precision) 🎯

گاهی نمی‌خواهید عدد پی (3.1415...) با تمام اعشارش چاپ شود. با استفاده از کولون : می‌توانید ظاهر اعداد را کنترل کنید:

  • {x:.2f}: فقط دو رقم اعشار.
  • {x:,}: اضافه کردن کاما برای جدا کردن هزار تایی (مثلاً 1,000,000).

۳. متد کلاسیک .format()

قبل از f-strings، این متد پادشاه بود. هنوز هم برای زمانی که می‌خواهید قالب رشته را در یک جای جداگانه و داده‌ها را در جایی دیگر داشته باشید، عالی است.

quantity = 3
itemno = 567
price = 49
myorder = "I want {} pieces of item number {} for {:.2f} dollars."
print(myorder.format(quantity, itemno, price))
ایندکس گذاری: در متد format() می‌توانید با عدد (مثلاً {0}، {1}) مشخص کنید که کدام آرگومان در کدام حفره قرار بگیرد. این کار برای جابه‌جایی ترتیب نمایش بدون تغییر داده‌ها عالی است.
محاسبات مستقیم: داخل f-string فقط جایگاه متغیر نیست؛ شما می‌توانید توابع را فراخوانی کنید یا ضرب و تقسیم انجام دهید. پایتون قبل از نمایش متن، تمام این عبارات را محاسبه می‌کند.

تمرین‌های عملی

برای تثبیت یادگیری این درس تمرین‌های زیر را حل کنید

ساخت F-String Easy
سوال تمرین

یک F-String بسازید که مقدار متغیر price = 49 را در عبارت 'The price is 49' قرار دهد و چاپ کند.

پاسخ تمرین
PYTHON
price = 49
print(f'The price is {price}')

آماده رفتن به درس بعدی هستید؟

این درس را به پایان رساندید و می‌توانید به درس بعدی بروید.