Python:
אינטרפולציה של מחרוזת
איך לעשות זאת:
בפייתון בגרסה 3.6 ומעלה, ניתן לאינטרפולט מחרוזות באמצעות f-strings. הנה איך:
name = 'אליס'
age = 30
greeting = f"שלום, {name}. אתה בן {age} שנים."
print(greeting)
פלט:
שלום, אליס. אתה בן 30 שנים.
ניתן גם להשתמש בביטויים בתוך הסוגריים המסולסלים:
a = 5
b = 10
info = f"חמישה ועשרה זה {a + b}, לא {2 * (a + b)}."
print(info)
פלט:
חמישה ועשרה זה 15, לא 30.
טבילה עמוקה
לפני פייתון 3.6, השימוש ב-.format()
היה הדרך לאינטרפולציה של מחרוזות:
name = 'בוב'
age = 25
greeting = "שלום, {}. אתה בן {} שנים.".format(name, age)
print(greeting)
פייתון מבית ספר ישן (גרסאות < 2.6) השתמשו באופרטור %
לאינטרפולציה, שהוא פחות אינטואיטיבי ויכול להיות מבולגן עם משתנים מרובים:
name = 'קרול'
age = 35
greeting = "שלום, %s. אתה בן %d שנים." % (name, age)
print(greeting)
מעבר לתחביר נקי יותר, f-strings הם מהירים יותר מפני שהם מוערכים בזמן ריצה ואז מומרים ישירות לפעולת פרמט מחרוזת יעילה. השימוש ב-.format()
ובאופרטור %
כרוך ביותר שלבים והוא איטי יותר.
ראה גם
- PEP 498 – Literal String Interpolation לתיעוד הרשמי על f-strings.
- Python f-strings מאת Real Python למדריך על שימוש ב-f-strings.
- The .format() Method בתיעוד הפייתון להבנת שיטת הפרמוט
.format()
הקודמת של עיצוב מחרוזות.