Slēdzis#

Ievads#

Switch bloki palīdz studentiem pāriet no uz blokiem balstītas kodēšanas uz teksta kodēšanu. Izmantojot Switch blokus, studenti var rakstīt Python kodu tieši bloku projektā — rakstot komandas, nosacījumus, vērtības vai funkciju definīcijas —, vienlaikus veidojot pārējo projektu no blokiem. Atsevišķus blokus var arī konvertēt līdzvērtīgās Python komandās.

Lai uzzinātu, kā rakstīt Python komandas, metodes un operatorus, skatiet VEXcode AIR Python API.

Tā kā Switch blokos ir Python kods, pareizrakstībai, pieturzīmēm un atkāpēm jābūt pareizām, lai projekts darbotos, kā paredzēts.

Zemāk ir visu slēdžu bloku saraksts:

Pārslēgt blokus — Pievienot Python kodu Blocks projektam.

  • Stack — Nodrošina vietu, kur ierakstīt Python komandas, kas darbojas secīgi ar citiem steka blokiem.

  • C bloks — Nodrošina atstarpi Python vadības koda rakstīšanai, piemēram, if, while, vai for priekšraksti.

  • C Paplašināma — Nodrošina vietu Python vadības koda rakstīšanai ar vairākām atzarām, piemēram, if, elifvai else.

  • Boolean — Nodrošina atstarpi Python koda rakstīšanai, kas atgriež True vai False.

  • Reporter — Nodrošina vietu, kur ierakstīt Python kodu, kas atgriež vērtību.

  • Cepure — Nodrošina vietu Python funkcijas definēšanai.

Kaudze#

Stack bloks nodrošina vietu Python komandu rakstīšanai, kas darbojas secīgi ar citiem steka blokiem.

Steka bloks#
[] :: custom-switch

Stack bloks var saturēt vienu vai vairākas Python koda rindiņas.

Kad tas ir sākts, izmanto Stack bloku, lai paceltos, gaidītu un pēc tam nolaistos.#
kad sākts
[Take off, wait 1 second, then land.]
[drone.take_off(500)] :: custom-switch
gaidīt [1] sekundes
nosēsties ▶

C bloks#

C bloks nodrošina vietu Python vadības koda rakstīšanai, piemēram, if, while, vai for priekšraksti. Bloki, kas ievietoti C blokā, darbojas kā daļa no šīs Python vadības struktūras.

C bloks#
if [] :: custom-switch
beigas

Python vadības kods, ko var izmantot C blokā, ietver:

Pēc iedarbināšanas izmanto C bloku, lai pārvietotos ar kontrolieri, līdz tiek nospiesta 7. poga.#
kad sākts
[Move with the controller until button 7 is pressed.]
pacelties uz [500] [mm v] ▶
if [while not controller.button7.pressing():] :: custom-switch
pārvietoties ar vadāmierīci
beigas
nosēsties ▶

C Paplašināms#

C paplašināmais bloks nodrošina vietu Python vadības koda rakstīšanai ar vairākiem atzariem, piemēram, if, elifvai elsePapildu atzarus var pievienot, atlasot pluszīmes bultiņu.

C Paplašināms bloks#
if [] :: custom-switch-expand
beigas

Python vadības kods, ko var izmantot C paplašināmā blokā, ietver:

Startēšanas laikā izmanto C paplašināmu bloku, lai uzkāptu augšup, lejup vai novietotos gaisā.#
kad sākts
[Climb up or down with buttons 5 and 6.]
pacelties uz [500] [mm v] ▶
mūžīgi
if [if controller.button5.pressing():] :: custom-switch-expand
kāpt [augšup v]
else [elif controller.button6.pressing():] :: custom-switch-expand
kāpt [lejup v]
else [else:] :: custom-switch-expand
lidot stacionāri
beigas
beigas

Būla#

Būla bloks nodrošina vietu Python koda rakstīšanai, kas atgriež True vai FalseTo var ievietot blokos ar sešstūra ieejām.

Būla bloks#
<[] :: custom-switch>

Būla bloks var saturēt Python nosacījumu.

Būla bloks ar Python nosacījumu#
<[controller.button7.pressing()] :: custom-switch>

Būla blokā var izmantot arī loģiskos operatorus:

Būla bloks ar Python loģisko operatoru#
<[controller.button5.pressing() and controller.button7.pressing()] :: custom-switch>

Būla blokā var izmantot salīdzināšanas operatorus, lai salīdzinātu vērtības:

  • Lielāks par: >

  • Mazāk nekā: <

  • Vienāds ar: ==

  • Citi salīdzināšanas operatori ir <=, !=un >=.

Būla bloks ar Python salīdzināšanas operatoru#
<[drone.inertial.get_heading()> 100] :: custom-switch>
Pēc palaišanas izmanto Būla bloku, lai atkārtotu, līdz tiek nospiesta 7. poga.#
kad sākts
[Move with the controller until button 7 is pressed.]
pacelties uz [500] [mm v] ▶
atkārtot līdz <[controller.button7.pressing()] :: custom-switch>
pārvietoties ar vadāmierīci
beigas
nosēsties ▶

Ziņotājs#

Bloks Reporter nodrošina vietu Python koda rakstīšanai, kas atgriež vērtību. To var ievietot blokos ar apļveida ievades formātu.

Ziņotāja bloks#
([] :: custom-switch)

Reporter blokā var būt Python kods, kas atgriež vērtību.

Ziņotāja bloks ar Python kodu, kas atgriež vērtību#
([drone.get_altitude()] :: custom-switch)

Matemātiskos operatorus var izmantot Reporter blokā:

  • Saskaitīšana: +

  • Atņemšana: -

  • Dalījums: /

  • Reizināšana: *

Ziņotāja bloks ar Python papildinājumu#
([drone.get_altitude() + 45] :: custom-switch)
Pēc iedarbināšanas izdrukā drona augstumu pēc 3 sekunžu kāpšanas.#
kad sākts
[Display the altitude after climbing for 3 seconds.]
pacelties uz [500] [mm v] ▶
kāpt [augšup v]
gaidīt [3] sekundes
drukāt ([drone.get_altitude()] :: custom-switch) ekrānā ▶
nosēsties ▶

Cepure#

Bloks Hat nodrošina vietu Python funkcijas definēšanai. Bloki, kas pievienoti zem Hat, kļūst par šīs funkcijas pamatdaļu.

Cepuru bloks#
[] :: hat custom-switch

Ierakstiet Python funkcijas definīciju Hat blokā. Parametri atrodas iekavās. Ja funkcija neizmanto parametrus, izmantojiet tukšas iekavas.

Cepuru bloks ar Python funkcijas definīciju#
[def function_name(parameter):] :: hat custom-switch
Startēšanas laikā funkcijas definēšanai un izsaukšanai tiek izmantots Hat bloks.#
[def take_off_500():] :: hat custom-switch
[Define a custom function using a Hat block.]
pacelties uz [500] [mm v] ▶

kad sākts
[take_off_500()] :: custom-switch