קורס פיתוח בפייתון
פרק
>
רמה

שימוש במילונים
פונקציות מותאמות אישית באמצעות מילונים

מטרה

השתמש בפונקציה מותאמת אישית שמצלבת בלולאה את השדה, נטועת ומשקיעה גידולים.

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

קח את תיק הזרעים אשר יספק לך את זרעי העצים הבאים במילון: "orange : 3" , "pear : 4" , "apple : 3" , "peach : 2". לך לסמל X המואר ליד הבאר והשתמש בפונקציה collect() לאיסוף מים, כך: player.collect("water").

לאחר שאספת את כל החומרים הנחוצים, צור פונקציה מותאמת אישית בשם sow_field המשתמשת בזרעים ובמים כדי לנטוע ולהשקות את השדה. הפונקציה תקבל שלושה (3) ארגומנטים, שהם: tree, loops ו-direction. בעזרת ארגומנטים אלו, הפונקציה תבצע לולאת for להשקיית השדה.

def sow_field(tree,loops,direction): for x in range(loops): if direction == "right": player.move_forward(2) player.turn_left() player.plant(seeds,tree) player.water() player.turn_right() player.move_forward() if direction == "left": player.move_forward() player.turn_right() player.plant(seeds,tree) player.water() player.turn_left() player.move_forward(2)

הארגומנט הראשון, tree, הוא שם המפתח במילון, ובין השאר: "orange", "pear", "apple" ו-"peach". בחר את השם המתאים בעת הנטיעה.

הארגומנט הבא הוא loops והוא קובע את מספר המחזורים שהפונקציה תעבור, בהתאם למספר הזרעים מכל סוג בשדה. הארגומנט האחרון הוא direction, שהם "left" ו-"right", בחר את הכיוון שבו תרצה שהשחקן ינוע בעת ביצוע הלולאה.

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

ספר קוד