
pw שמחזירה את x בריבוע, ואחר כך פונקציית lambda שעושה אותו דבר. שתיהן מתנהגות זהה.pw.הטקסט המלא של הדקות הראשונות בהרצאה «lambda» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום לכולם, בשיעור הזה נדבר על פונקציות למדה. אז מה הן פונקציות למדה? פונקציות למדה הן פונקציות אנונימיות, כלומר פונקציות שאין להן שם.
אז בואו נתחיל בדוגמה. אז נתחיל מלהגדיר פונקציה שנקראת pw, פה מה שהיא עושה היא מקבלת x ומחזירה את x בריבוע. ונמשיך ולהגדיר את הלמדה התואמת.
ונדפיס את שתיהן. יש לנו פה פונקציה שמקבלת x ומחזירה את x בריבוע, ויש לנו גם פונקציית למדא זהה, שגם מקבלת x ומחזירה את x בריבוע.
בואו דבר ראשון נדבר על המבנה של איך למדא בנויה. דבר ראשון יש לנו את למדא, שזאת מילה שמורה, שימו לב שהיא בצבע כחול, זאת מילה שמורה בפייתון.
לאחר מכן יש לנו את המשתנים שאנחנו מקבלים, לאחר מכן נקודותיים, ולאחר מכן הפעולה שאנחנו רוצים לעשות על המשתנים. בואו נמשיך ונדבר על עוד כמה למדות.
בואו נגדיר למדה ופונקציות שמקבלות שני מספרים ומחזירות את הסכום שלהם. אז הפונקציה היא מאוד פשוטה והגרסה של הלמדה, בואו נראה שבאמת זה עובד.
בואו נסתכל עוד פעם על הפונקציה ועל הלמדה שלה. אז על הפונקציה באמת אנסי באה לעבור, הפונקציה מקבלת שתי פרמטרים ומחזירה את הסכום שלהם.
למדה, יש לנו עוד פעם את למדה, מילת מפתח. את החלק בין הלמדה עד נקודותיים שהוא בעצם אומר באיזה משתנים אנחנו עומדים להשתמש פה ואחרי הנקודותיים בעצם הביטוי שאנחנו רוצים לעשות על המספרים האלה עכשיו שימו לב שאין לי פה ריטרן אלא פייתון מבינה בגלל שזה למדה לא צריך לכתוב ריטרן היא מבינה שאני רוצה להחזיר את מה שיש בצד ימין של הנקודותיים עכשיו אין לי פה גם שם
לפונקציה זאת פונקציה אנונימית כמו שאמרתי אין לה שם אני קורא לה בעזרת a שהוא בעצם שווה ללמדה הזאת, אבל הוא לא השם שלה. ותכף גם נראה איפה זה בא לידי ביטוי.
עכשיו, פייתון מאוד מגבילה אותנו מבחינת למדות. אנחנו לא יכולים להגדיר משתנים בתוך למדות, אנחנו לא יכולים לעשות יותר מביטוי אחד, אנחנו לא יכולים להחזיר להגיד בתוך הלמדה, יש לי גם משתנה עזר z ששווה לאיזשהו משהו, שווה ל-5, ואז אני רוצה שתעשה לי x ועוד y, ואם x ועוד y גדול מ... לא, אנחנו מוגבלים לביטוי, ואך ורק ביטוי אחד, כאשר הביטוי הזה יכול
להיות עם ביטוי מתוחכם יחסית של x ועוד, x בחזקת זה או זה, זה וזה, אבל לא יותר מזה. הפונקציה האנונימית, פייתון ברמת השפה זה מוגבל כדי לשמור על הפשטות שלה.
בואו נראה דוגמה קצת יותר קיימת. אני אוסיף פה קצת סוגריים, מה שאני רוצה להגיד זה כזה דבר.
או ש-x גדול מ-5, או ש-x שווה 2, או ש-x קטן מ-1, והמספר 5 תם, לא, נעשה את זה ככה, x ו-y, ו-y שווה שווה 5. בעצם אנחנו רואים שעדיין יש לנו פה ביטוי 1, אפשר לשים את זה בתוך if statement והדבר הזה יהיה חוקי, אבל אין לנו פה משהו יותר מתוחכם מזה.