Print() בפייתון. תחביר, שגיאות, ארגומנטים סוף ו-sep

קופונים להדפסה() - כנראה הפקודה הראשונה שבה נתקל מתחיל כשהוא לומד Python מאפס. כמעט כולם מתחילים בברכה פשוטה על המסך ועוברים ללימוד נוסף של התחביר, הפונקציות והשיטות של השפה, מבלי לחשוב על תכונות נוספות. הדפס (). עם זאת, ב-Pythב-3 פקודה זו מספקת גישה לפונקציית פלט הנתונים הבסיסית עם הפרמטרים והיכולות הטבועות בה. הכרת התכונות הללו תאפשר לך לייעל את פלט הנתונים עבור כל מקרה ספציפי.

יתרונות תכונה הדפסה() ב פיתון 3

בגרסה השלישית של Python הדפסה() הכלולים במערך הפונקציות הבסיסי. בעת ביצוע בדיקה סוג(הדפסה) מידע מוצג: בכיתה "בנוי_פונקציה_or_שיטה". מִלָה בנוי מציין שהפונקציה הנבדקת היא מוטבעת.

לא משנהhעל 3 אובייקטי פלט (אובייקטs) ממוקמים בסוגריים אחרי המילה הדפסה. בדוגמה של הפלט של ברכה מסורתית, זה ייראה כך:

בעד פייתון 3: print('שלום, עולם!').

ב-Python 2, ההצהרה מוחלת ללא סוגריים: הדפסה "שלום, עולם! '

התוצאה בשתי הגרסאות תהיה זהה: שלום, עולם!

אם בגרסה השנייה של Python הערכים אחרי הדפסה שים בסוגריים, אז יוצג tuple - סוג נתונים שהוא רשימה בלתי ניתנת לשינוי:

print(1, 'first', 2, 'second')

(1, 'ראשון', 2, 'שני')

כאשר מנסים להסיר את הסוגריים לאחר הדפסה בגרסה השלישית של Python, התוכנית תציג שגיאת תחביר.

print("שלום, עולם!")
קובץ"", שורה 1 הדפס "Hello, World!" ^ SyntaxError: חסרים סוגריים בקריאה ל'print'. האם התכוונת ל-print("Hello, World!")?

 המוזרויות של תחביר print() ב- Python 3

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

print(value, ..., sep='', end='n', file=sys.stdout, flush=False)

קריאת פונקציה אפשרית ללא ציון ערכי פרמטרים ואפילו ללא אובייקטים כלשהם: הדפס (). במקרה זה, נעשה שימוש בפרמטרי ברירת המחדל, ואם אין אלמנטים, יוצג תו מחרוזת ריקה שלא מוצגת - למעשה, הערך של הפרמטר סוף - "n". קריאה כזו, למשל, יכולה לשמש עבור הזחה אנכית בין פינים.

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

פרמטר סֶפּטֶמבֶּר

ערכים של כל הפרמטרים הדפסה מתוארים כארגומנטים של מילות מפתח סֶפּטֶמבֶּר, סוף, פילה, סומק. אם הפרמטר סֶפּטֶמבֶּר לא צוין, אז ערך ברירת המחדל שלו מוחל: סֶפּטֶמבֶּר= ”, ואובייקטי פלט מופרדים על ידי רווחים. דוגמא:

הדפסה(1, 2, 3)

1 2 3

בתור טיעון סֶפּטֶמבֶּר אתה יכול לציין ערך אחר, למשל:

  • מפריד חסר ספטמבר=»;
  • פלט קו חדש ספטמבר ="לֹא';
  • או כל שורה:

הדפסה(1, 2, 3, sep='מילה מפריד')

מפריד מילה 1 מפריד מילה 2

פרמטר סוף

כברירת מחדל סוף='n', והפלט של אובייקטים מסתיים בשורה חדשה. החלפת ערך ברירת המחדל בארגומנט אחר, למשל, סוף= ", ישנה את הפורמט של נתוני הפלט:

print('one_', end=»)

print('two_', end=»)

print('three')

אחת שתיים שלוש

פרמטר פילה

פוּנקצִיוֹנָלִי הדפס () תומך בהפניית פלט באמצעות פרמטר פילה, אשר כברירת מחדל מתייחסת sys.stdout - פלט סטנדרטי. ניתן לשנות את הערך ל sys.stdin or sys.stderr. אובייקט קובץ סטדין מוחל על הקלט, ו סטדרר לשלוח רמזים מתורגמנים והודעות שגיאה. שימוש בפרמטר פילה אתה יכול להגדיר את הפלט לקובץ. אלה יכולים להיות קבצי .csv או .txt. דרך אפשרית לכתוב מחרוזת לקובץ:

fileitem = open('printfile.txt','a')

def test (אובייקטים):

עבור אלמנט באובייקטים:

print(element, file=filleitem)

fileitem.close()

מבחן([10,9,8,7,6,5,4,3,2,1])

בפלט ייכתבו רכיבי הרשימה קובץ הדפסה.txt אחד בכל שורה.

פרמטר סומק

פרמטר זה קשור לאגירת זרם נתונים ומכיוון שהוא בוליאני הוא יכול לקחת שני ערכים - נָכוֹן и לא נכון. כברירת מחדל, האפשרות מושבתת: סומק=לא נכון. המשמעות היא ששמירת נתונים מהמאגר הפנימי לקובץ תתרחש רק לאחר סגירת הקובץ או לאחר קריאה ישירה אליו סומק (). לשמור לאחר כל שיחה הדפס () יש להקצות לפרמטר ערך נָכוֹן:

file_flush = open(r'file_flush.txt', 'a')

הדפס("שיאקוויםвפילה«, file=file_flush, flush=True)

הדפס("שיאשניקוויםвפילה«, file=file_flush, flush=True)

file_flush.close()

דוגמה נוספת לשימוש בפרמטר סומק באמצעות מודול הזמן:

Print() בפייתון. תחביר, שגיאות, ארגומנטים סוף ו-sep

במקרה זה, הטיעון נָכוֹן פרמטר סומק יאפשר את הצגת המספרים בזה אחר זה תוך שלוש שניות, בעוד שבברירת מחדל כל המספרים יוצגו על המסך לאחר 15 שניות. כדי לראות חזותית את השפעת הפרמטר סומק, עדיף להפעיל את הסקריפט בקונסולה. העובדה היא שכאשר משתמשים במעטפות אינטרנט מסוימות, בפרט, Jupyter Notebook, התוכנית מיושמת אחרת (מבלי לקחת בחשבון את הפרמטר סומק).

הדפסת ערכי משתנים עם print()

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

= 0

b = 'פיתון מאפס'

print(a,'– מספר, а',ב,'– קו.')

0 הוא מספר ופייתון מאפס הוא מחרוזת.

כלי נוסף להעברת ערכי משתנים לפלט הוא השיטה פוּרמָט. קופונים להדפסה במקביל, הוא פועל כתבנית שבה במקום שמות משתנים בסוגריים מסולסלים, מצוינים אינדקסים של ארגומנטים מיקוםיים:

= 0

b = 'פיתון מאפס'

הדפסה('{0} הוא מספר ו-{1} הוא מחרוזת.'.פוּרמָט(a,b))

0 הוא מספר ופייתון מאפס הוא מחרוזת.

במקום פוּרמָט ניתן להשתמש בסמל %, שפועל על אותו עיקרון של מצייני מיקום (בדוגמה הקודמת, סוגריים מסולסלים פעלו כמצייני מיקום). במקרה זה, מספרי האינדקס מוחלפים בסוג הנתונים המוחזר על ידי הפונקציה:

  • מציין מיקום %d משמש לנתונים מספריים;
  • מציין המיקום %s הוא עבור מחרוזות.

= 0

b = 'פיתון מאפס'

הדפסה('%d הוא מספר ו-%s – מחרוזת.'%(a,b))

0 הוא מספר ופייתון מאפס הוא מחרוזת.

אם במקום מציין מיקום עבור מספרים שלמים %d לפרט %sפונקציה הדפסה ימיר את המספר למחרוזת והקוד יעבוד כמו שצריך. אבל בעת החלפה %s on %d הודעת שגיאה תוצג מכיוון שההמרה ההפוכה לא מבוצעת.

Print() בפייתון. תחביר, שגיאות, ארגומנטים סוף ו-sep

סיכום

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

השאירו תגובה