Kapcsoló#
Bevezetés#
A Switch blokkok segítenek a diákoknak a blokkalapú kódolásról a szövegalapú kódolásra való átállásban. A Switch blokkok segítségével a diákok közvetlenül egy blokkprojekten belül gépelhetnek Python kódot – parancsokat, feltételeket, értékeket vagy függvénydefiníciókat írhatnak –, miközben a projekt többi részét továbbra is blokkokkal építik fel. Az egyes blokkok átalakíthatók a nekik megfelelő Python parancsokká is.
A Python parancsok, metódusok és operátorok begépelésének megtanulásához lásd a VEXcode AIR Python API dokumentumot.
Mivel a Switch blokkok Python kódot tartalmaznak, a helyesírásnak, az írásjeleknek és a behúzásnak helyesnek kell lennie ahhoz, hogy a projekt a várt módon fusson.
Az alábbiakban felsoroljuk az összes kapcsolóblokkot:
Blokkok váltása — Python kód hozzáadása egy Blocks projekthez.
Stack — Helyet biztosít a többi veremblokkkal sorban futó Python parancsok beírásához.
C blokk — Szóközt biztosít Python vezérlőkód beírásához, például
if,while, vagyforutasítások.C Bővíthető — Helyet biztosít több ágból álló Python vezérlőkód beírására, például
if,elifvagyelse.Boolean — Szóközt biztosít Python kód beírásához, amely
True-et ad vissza (True vagy 2). vagyFalse-et.Jelentő — Helyet biztosít egy értéket visszaadó Python kód beírásához.
Hat — Helyet biztosít egy Python függvény definiálásához.
Stack#
A Stack blokk helyet biztosít olyan Python parancsok begépelésére, amelyek más veremblokkokkal sorban futnak.
[] :: custom-switch
Egy Stack blokk egy vagy több sornyi Python kódot tartalmazhat.
amikor elindul
[Take off, wait 1 second, then land.]
[drone.take_off(500)] :: custom-switch
várakozás [1] másodpercig
leszállás ▶
C tömb#
A C blokk helyet biztosít Python vezérlőkód beírására, például if, while, vagy for utasítások esetén. A C blokkon belül elhelyezett blokkok a Python vezérlőszerkezetének részeként futnak.
if [] :: custom-switch
vége
A C blokkban használható Python vezérlőkód a következőket tartalmazza:
amikor elindul
[Move with the controller until button 7 is pressed.]
felszállás [500] [mm v] magasságra ▶
if [while not controller.button7.pressing():] :: custom-switch
mozgás vezérlővel
vége
leszállás ▶
C Bővíthető#
A C Expandable blokk helyet biztosít több ággal rendelkező Python vezérlőkód beírására, például if, elifvagy else. További ágak a plusz nyíl kiválasztásával adhatók hozzá.
if [] :: custom-switch-expand
vége
A C Expandable blokkban használható Python vezérlőkód a következőket tartalmazza:
amikor elindul
[Climb up or down with buttons 5 and 6.]
felszállás [500] [mm v] magasságra ▶
örökre
if [if controller.button5.pressing():] :: custom-switch-expand
emelkedés [fel v]
else [elif controller.button6.pressing():] :: custom-switch-expand
emelkedés [le v]
else [else:] :: custom-switch-expand
lebegés
vége
vége
Logikai#
A Boolean blokk helyet biztosít Python kód beírására, amely True vagy Falseértéket ad vissza. Hexagonális bemenettel rendelkező blokkokba helyezhető.
<[] :: custom-switch>
Egy Boolean blokk tartalmazhat Python feltételt.
<[controller.button7.pressing()] :: custom-switch>
Egy Boolean blokk logikai operátorokat is használhat:
<[controller.button5.pressing() and controller.button7.pressing()] :: custom-switch>
Egy Boolean blokk összehasonlító operátorokat használhat az értékek összehasonlítására:
Nagyobb, mint:
>Kevesebb, mint:
<Egyenlő:
==Egyéb összehasonlító operátorok közé tartozik a
<=,!=és>=
<[drone.inertial.get_heading()> 100] :: custom-switch>
amikor elindul
[Move with the controller until button 7 is pressed.]
felszállás [500] [mm v] magasságra ▶
ismétlés amíg <[controller.button7.pressing()] :: custom-switch>
mozgás vezérlővel
vége
leszállás ▶
Riporter#
A Reporter blokk helyet biztosít a visszaadott Python kód beírására. Kör alakú bemenetekkel rendelkező blokkokba helyezhető.
([] :: custom-switch)
Egy Reporter blokk tartalmazhat Python kódot, amely egy értéket ad vissza.
([drone.get_altitude()] :: custom-switch)
Matematikai operátorok használhatók egy Jelentő blokkban:
([drone.get_altitude() + 45] :: custom-switch)
amikor elindul
[Display the altitude after climbing for 3 seconds.]
felszállás [500] [mm v] magasságra ▶
emelkedés [fel v]
várakozás [3] másodpercig
([drone.get_altitude()] :: custom-switch) nyomtatása a képernyőn ▶
leszállás ▶
Kalap#
A Hat blokk teret biztosít egy Python függvény definiálására. A Hat alá csatolt blokkok a függvény törzsét alkotják.
[] :: hat custom-switch
Írj be egy Python függvénydefiníciót a Hat blokkba. A paraméterek zárójelek közé kerülnek. Ha a függvény nem használ paramétereket, használj üres zárójeleket.
[def function_name(parameter):] :: hat custom-switch
[def take_off_500():] :: hat custom-switch
[Define a custom function using a Hat block.]
felszállás [500] [mm v] magasságra ▶
amikor elindul
[take_off_500()] :: custom-switch