דילוג לתוכן המרכזי
מודול 1 · שיעור 4 מתוך 44/36 בקורס~8 min
שיעורי מודול (4/4)

הדפסה וחוטי f

כדי לתקשר משהו למשתמש (או לראות מה קורה בפנים התוכנית שלנו) אנו משתמשים בפונקציה המובנית print(...). להלחין טקסט ממספר ערכים, התחביר המודרני והמועדף הוא ה מחרוזת f.

print(...)

Python
print("Ciao, mondo!")           # Ciao, mondo!
print("a", "b", "c")            # a b c       (separati da spazio)
print(2 + 2)                    # 4
print("riga 1", "riga 2")       # riga 1 riga 2

print יכול לקחת כמה טיעונים שתרצה: הוא מצטרף אליהם עם רווח (על ידי ברירת מחדל) ומוסיף שורה חדשה בסוף. אתה יכול לשנות את שניהם עם פרמטרים sep וend:

Python
print("a", "b", "c", sep="-")   # a-b-c
print("senza newline", end="")  # niente \n dopo

מחרוזת f: אינטרפולציה מודרנית

מחרוזת f היא מחרוזת עם קידומת f: בתוך הסוגרים {...} אתה יכול להכניס כל ביטוי של Python, שיוערך ויוכנס לתוך תוצאה:

Python
nome = "Ada"
anni = 30
print(f"Mi chiamo {nome} e ho {anni} anni.")
# Mi chiamo Ada e ho 30 anni.

בתוך הפלטה אתה יכול לשים שיחות, פעולות, גישה לאובייקט - זה כן קוד פייתון מכל הבחינות:

Python
prezzo = 12.5
quantita = 3
print(f"Totale: {prezzo * quantita:.2f} €")
# Totale: 37.50 €

ה-:.2f אחרי הנקודתיים הוא מפרט פורמט: במקרה זה "שני עשרונים ספרות, נקודה קבועה". מפרט הפורמט השימושי ביותר:

  • :.Nf - N ספרות עשרוניות (f"{pi:.4f}" → 3.1416).
  • :N / :>N / :<N / :^N - רוחב N, יישור ימין/שמאל/מרכז.
  • :_ או :, - מפריד אלפים (f"{1000000:,}" → 1,000,000).

תחבירים חלופיים (לעיון)

לפני מחרוזות f (שהוצגו ב-Python 3.6) נעשה שימוש בשתי צורות אתה עדיין תיתקל בקוד ישן יותר:

Python
# stile .format() — verboso ma esplicito
"{} ha {} anni".format("Ada", 30)

# stile %-formatting — molto vecchio
"%s ha %d anni" % ("Ada", 30)

לקוד חדש, השתמש תמיד ב-f-strings: קצר יותר, קריא יותר, מהיר יותר.

עיצוב מתקדם עם מחרוזות f

מחרוזות F תומכות במפרטי עיצוב עשירים ישירות בתוך הפלטה המתולתלת. לדוגמה, כדי לעצב מספר עשרוני עם שני מקומות עשרוניים בדיוק, אתה יכול לכתוב:

Python
price = 19.99
print(f"Price: {price:.2f} $")

המפרט :.2f מציין שאנו רוצים לייצג את הצוף עם 2 מקומות עשרוניים בדיוק.

נסה זאת בעצמך

פעילות גופנית#python.m1.l4.e1
ניסיונות: 0טוען...

בהינתן `name = 'Ada'` ו-`age = 30`, בנה את המחרוזת 'Ada ha 30 anni' עם מחרוזת f והקצה אותה ל-`שורה`. הערך 'קו'.

טוען עורך...
הצג רמז

תחביר: f"משהו {משתנה} משהו אחר"

הפתרון זמין לאחר 3 ניסיונות

סקירת התרגיל

פעילות גופנית#python.m1.l4.e2
ניסיונות: 0טוען...

הדפס עם print() את המחרוזת 'pi greco vale 3.14' החל מ-'pi = 3.14159', באמצעות מחרוזת f עם מפרט פורמט של 2 עשרוניות.

טוען עורך...
הצג רמז

מפרט הפורמט הולך אחרי הקולון בתוך הסוגרים: {pi:.2f}.

הפתרון זמין לאחר 3 ניסיונות

אתגר נוסף

פעילות גופנית#python.m1.l4.e3
ניסיונות: 0טוען...

Given a variable `price` set to `19.99`, use an f-string to construct the string `'Price: 19.99 €'` and store it in `receipt_line`. Finally, evaluate the variable.

טוען עורך...
הצג רמז

השתמש ב-f"מחיר: {price} €" והקצה את התוצאה ל-reeipt_line.

הפתרון זמין לאחר 3 ניסיונות