שימוש ברשומות בתבניות מחרוזות
שפת פיתון תומכת באפשרות הכנסת ערכים לתוך תבניות מחרוזות
(formatting). לאפשרות זו שיכלולים רבים. כאן נסקור
את הבסיסיים והשימושיים שבהם. התבניות בהן נעשה שימוש בפיתון זהות לאלו
בהן נעשה שימוש בפקודה sprintf של שפת
C.
>>> k = "uid" >>> v =
"sa" >>>
"%s=%s" % (k, v) 'uid=sa'
העבירו את הסמן מעל השורות המסומנות לקבלת
הסברים
הביטוי מחזיר
מחרוזת. הצירופים %s שבתוך התבנית
מוחלפים בערכים של k ו-v בהתאמה. שאר התווים (הסימנים) שבתבנית נשארים כפי
שהם (במקרה זה זהח רק סימן ה '=' ). לתשומת לבך: (k,
v)
היא רשומה.
>>>
uid = "sa" >>> pwd =
"secret"
>>>
print
pwd + " is not
a good password for " + uid
secret is not
a good password for sa
>>>
print
"%s is not a
good password for %s" % (pwd, uid) secret is not
a good password for sa >>> userCount =
6
>>>
print
"Users
connected: %d" % (userCount, )
Users
connected: 6
>>>
print
"Users
connected: " + userCount Traceback
(innermost last): File
"<interactive input>", line 1, in ? TypeError:
cannot add type "int" to string
העבירו את
הסמן מעל השורות המסומנות לקבלת הסברים
+ הוא כאמור
אופרטור לשירשור, והוא עובד גם על מחרוזות.
במקרה זה, התבנית והשירשור משיגים את אותה
התוצאה.
ניתן להכניס מספרים לתבניות באותו האופן, על ידי שימוש ב-
%d.
ניסיון לשרשר מחרוזת עם אלמנט שאינו מחרוזת מחזיר שגיאה.
פתרון אחר לבעיה זו הוא להשתמש בפונקציה str(elem) שמקבלת אלמנט כלשהו ומחזירה מחרוזת:
Print “Users
connected: “ + str(userCount(4))
|