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()הקודמת של עיצוב מחרוזות.