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 VEX AIM 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, vaiforpriekšraksti.C Paplašināma — Nodrošina vietu Python vadības koda rakstīšanai ar vairākām atzarām, piemēram,
if,elifvaielse.Boolean — Nodrošina atstarpi Python koda rakstīšanai, kas atgriež
TruevaiFalse.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.
[] :: custom-switch
Stack bloks var saturēt vienu vai vairākas Python koda rindiņas.
kad sākts
[Move forward 400 mm.]
[robot.move_for(400, 0)] :: custom-switch
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.
if [] :: custom-switch
beigas
Python vadības kods, ko var izmantot C blokā, ietver:
kad sākts
[Continuously turn right until the screen is pressed.]
griezties [pa labi v]
mūžīgi
if [if robot.screen.pressing():] :: custom-switch
drukāt [Screen was pressed!] ekrānā ▶
apturēt visas kustības
beigas
beigas
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.
if [] :: custom-switch-expand
beigas
Python vadības kods, ko var izmantot C paplašināmā blokā, ietver:
kad sākts
[Continuously move forward until the robot has a sports ball.]
mūžīgi
if [if robot.has_sports_ball():] :: custom-switch-expand
drukāt [Sports ball found!] ekrānā ▶
apturēt visas kustības
else [else:]
virzīties [uz priekšu v]
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.
<[] :: custom-switch>
Būla bloks var saturēt Python nosacījumu.
<[robot.screen.pressing()] :: custom-switch>
Būla blokā var izmantot arī loģiskos operatorus:
<[robot.screen.pressing() and robot.has_sports_ball()] :: 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>=.
<[robot.inertial.get_heading()> 100] :: custom-switch>
kad sākts
[Continuously turn right until the screen is pressed.]
griezties [pa labi v]
mūžīgi
ja <[robot.screen.pressing()] :: custom-switch> tad
drukāt [Screen was pressed!] ekrānā ▶
apturēt visas kustības
beigas
beigas
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.
([] :: custom-switch)
Reporter blokā var būt Python kods, kas atgriež vērtību.
([robot.inertial.get_heading()] :: custom-switch)
Matemātiskos operatorus var izmantot Reporter blokā:
([robot.inertial.get_heading() + 45] :: custom-switch)
kad sākts
[Print the robot's heading plus 45 degrees.]
drukāt ([robot.inertial.get_heading() + 45] :: custom-switch) ekrānā ▶
Cepure#
Bloks Hat nodrošina vietu Python funkcijas definēšanai. Bloki, kas pievienoti zem Hat, kļūst par šīs funkcijas pamatdaļu.
[] :: hat custom-switch
Ierakstiet Python funkcijas definīciju Hat blokā. Parametri atrodas iekavās. Ja funkcija neizmanto parametrus, izmantojiet tukšas iekavas.
[def function_name(parameter):] :: hat custom-switch
[def move_400():] :: hat custom-switch
[Define a custom function using a Hat block.]
virzīties [uz priekšu v] par (400) [mm v] ▶
kad sākts
[move_400()] :: custom-switch