דילוג לתוכן
UAVProg
שפהhe
בלוקים

בלוקים

משתנים ופונקציות

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

הקטגוריות מתחילות כמעט ריקות: אתם יוצרים את המשתנים והפונקציות שבהן. משתנה נותן שם לערך; פונקציה נותנת שם לקבוצת פעולות.

משתנה

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

בלוקפעולהקוד
קביעת ערךשומר מספר או ערך אחרhopSeconds = 2
שם המשתנהמחזיר את הערך לשקעhopSeconds
שינוי בערךמוסיף למספר הקייםhopSeconds += 1 במובן הפעולה
נוצר מבלוקים
hopSeconds = None
hopSeconds = 2
drone.active_fly()
drone.takeoff()
for count in range(4):
    drone.fly('forward', 1)
    time.sleep(hopSeconds)
    drone.fly_stop()
    time.sleep(0.5)
drone.land()

שינוי hopSeconds משפיע על כל החזרות. שורת None יכולה להיכתב על ידי העורך כדי ליצור את המשתנה לפני השימוש; בלוק הקביעה שלכם נותן לו את הערך המעשי.

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

קובעים hopSeconds ל־2 ומשתמשים בו בהמתנה. המשתנה אינו מתעדכן מעצמו.

קובעים hopSeconds ל־2 ומשתמשים בו בהמתנה. המשתנה אינו מתעדכן מעצמו.

פונקציה

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

נוצר מבלוקים
def one_side():
    drone.fly('forward', 1)
    time.sleep(2)
    drone.fly_stop()
    time.sleep(0.5)

drone.active_fly()
drone.takeoff()
for count in range(4):
    one_side()
drone.land()

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

הגדרת one_side ובלוק קריאה נפרד. ההגדרה אינה מופעלת מעצמה; משלבים את הקריאה בתוכנית.

הגדרת one_side ובלוק קריאה נפרד. ההגדרה אינה מופעלת מעצמה; משלבים את הקריאה בתוכנית.

פרמטרים וערך מוחזר

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

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

בדקו שהקריאות משתמשות ביחידות הנכונות ושבכל מסלול של התוכנית יש דרך לסיים את הטיסה. להמשך: רשימות וטקסט.