שיעורי מודול (4/4)
הדפסה וחוטי f
כדי לתקשר משהו למשתמש (או לראות מה קורה בפנים
התוכנית שלנו) אנו משתמשים בפונקציה המובנית print(...). להלחין
טקסט ממספר ערכים, התחביר המודרני והמועדף הוא ה
מחרוזת f.
print(...)
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 2print יכול לקחת כמה טיעונים שתרצה: הוא מצטרף אליהם עם רווח (על ידי
ברירת מחדל) ומוסיף שורה חדשה בסוף. אתה יכול לשנות את שניהם עם
פרמטרים sep וend:
print("a", "b", "c", sep="-") # a-b-c
print("senza newline", end="") # niente \n dopoמחרוזת f: אינטרפולציה מודרנית
מחרוזת f היא מחרוזת עם קידומת f: בתוך הסוגרים {...}
אתה יכול להכניס כל ביטוי של Python, שיוערך ויוכנס לתוך
תוצאה:
nome = "Ada"
anni = 30
print(f"Mi chiamo {nome} e ho {anni} anni.")
# Mi chiamo Ada e ho 30 anni.בתוך הפלטה אתה יכול לשים שיחות, פעולות, גישה לאובייקט - זה כן קוד פייתון מכל הבחינות:
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) נעשה שימוש בשתי צורות אתה עדיין תיתקל בקוד ישן יותר:
# stile .format() — verboso ma esplicito
"{} ha {} anni".format("Ada", 30)
# stile %-formatting — molto vecchio
"%s ha %d anni" % ("Ada", 30)לקוד חדש, השתמש תמיד ב-f-strings: קצר יותר, קריא יותר, מהיר יותר.
עיצוב מתקדם עם מחרוזות f
מחרוזות F תומכות במפרטי עיצוב עשירים ישירות בתוך הפלטה המתולתלת. לדוגמה, כדי לעצב מספר עשרוני עם שני מקומות עשרוניים בדיוק, אתה יכול לכתוב:
price = 19.99
print(f"Price: {price:.2f} $")המפרט :.2f מציין שאנו רוצים לייצג את הצוף עם 2 מקומות עשרוניים בדיוק.
נסה זאת בעצמך
בהינתן `name = 'Ada'` ו-`age = 30`, בנה את המחרוזת 'Ada ha 30 anni' עם מחרוזת f והקצה אותה ל-`שורה`. הערך 'קו'.
הצג רמז
תחביר: f"משהו {משתנה} משהו אחר"
הפתרון זמין לאחר 3 ניסיונות
סקירת התרגיל
הדפס עם print() את המחרוזת 'pi greco vale 3.14' החל מ-'pi = 3.14159', באמצעות מחרוזת f עם מפרט פורמט של 2 עשרוניות.
הצג רמז
מפרט הפורמט הולך אחרי הקולון בתוך הסוגרים: {pi:.2f}.
הפתרון זמין לאחר 3 ניסיונות
אתגר נוסף
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 ניסיונות