Cambiar#
Introducción#
Los bloques Switch ayudan a los estudiantes a pasar de la programación basada en bloques a la programación basada en texto. Con los bloques Switch, los estudiantes pueden escribir código Python directamente dentro de un proyecto de bloques (comandos, condiciones, valores o definiciones de funciones) mientras continúan desarrollando el resto del proyecto con bloques. Además, los bloques individuales se pueden convertir en sus comandos Python equivalentes.
Para aprender a escribir comandos, métodos y operadores de Python, consulte la API de Python de VEXcode AIR.
Dado que los bloques Switch contienen código Python, la ortografía, la puntuación y la indentación deben ser correctas para que el proyecto se ejecute como se espera.
A continuación se muestra una lista de todos los bloques Switch:
Bloques Switch: Añade código Python a un proyecto de Blocks.
Pila — Proporciona un espacio para escribir comandos de Python que se ejecutan en secuencia con otros bloques de la pila.
Bloque C — Proporciona un espacio para escribir código de control de Python, como
if,while, oforsentencias.C Expandible — Proporciona un espacio para escribir código de control de Python con múltiples ramas, como
if,elif, oelse.Booleano — Proporciona un espacio para escribir código Python que devuelve
TrueoFalse.Reportero — Proporciona un espacio para escribir código Python que devuelve un valor.
Sombrero — Proporciona un espacio para definir una función de Python.
Pila#
El bloque Stack proporciona un espacio para escribir comandos de Python que se ejecutan en secuencia con otros bloques de la pila.
[] :: custom-switch
Un bloque Stack puede contener una o varias líneas de código Python.
cuando inicie
[Take off, wait 1 second, then land.]
[drone.take_off(500)] :: custom-switch
esperar [1] segundos
aterrizar ▶
Bloque C#
El Bloque C proporciona un espacio para escribir código de control de Python, como las instrucciones if, whileo for Los bloques colocados dentro del Bloque C se ejecutan como parte de esa estructura de control de Python.
if [] :: custom-switch
fin
El código de control Python que se puede utilizar en un bloque C incluye:
cuando inicie
[Move with the controller until button 7 is pressed.]
despegar a [500] [mm v] ▶
if [while not controller.button7.pressing():] :: custom-switch
mover con el control
fin
aterrizar ▶
C Expandible#
El bloque C Expandible proporciona un espacio para escribir código de control Python con múltiples ramificaciones, como if, elifo elseSe pueden agregar ramificaciones adicionales seleccionando la flecha más.
if [] :: custom-switch-expand
fin
El código de control Python que se puede utilizar en un bloque C Expandible incluye:
cuando inicie
[Climb up or down with buttons 5 and 6.]
despegar a [500] [mm v] ▶
por siempre
if [if controller.button5.pressing():] :: custom-switch-expand
ascender [arriba v]
else [elif controller.button6.pressing():] :: custom-switch-expand
ascender [abajo v]
else [else:] :: custom-switch-expand
flotar
fin
fin
Booleano#
El bloque Booleano proporciona un espacio para escribir código Python que devuelve True o FalseSe puede colocar dentro de bloques con entradas hexagonales.
<[] :: custom-switch>
Un bloque booleano puede contener una condición de Python.
<[controller.button7.pressing()] :: custom-switch>
Un bloque booleano también puede utilizar operadores lógicos:
<[controller.button5.pressing() and controller.button7.pressing()] :: custom-switch>
Un bloque booleano puede utilizar operadores de comparación para comparar valores:
Mayor que:
>Menos de:
<Igual a:
==Otros operadores de comparación incluyen
<=,!=, y>=
<[drone.inertial.get_heading()> 100] :: custom-switch>
cuando inicie
[Move with the controller until button 7 is pressed.]
despegar a [500] [mm v] ▶
repetir hasta <[controller.button7.pressing()] :: custom-switch>
mover con el control
fin
aterrizar ▶
Reportero#
El bloque Reportero proporciona un espacio para escribir código Python que devuelve un valor. Se puede colocar dentro de bloques con entradas circulares.
([] :: custom-switch)
Un bloque Reporter puede contener código Python que devuelve un valor.
([drone.get_altitude()] :: custom-switch)
Los operadores matemáticos se pueden utilizar en un bloque Reportero:
([drone.get_altitude() + 45] :: custom-switch)
cuando inicie
[Display the altitude after climbing for 3 seconds.]
despegar a [500] [mm v] ▶
ascender [arriba v]
esperar [3] segundos
imprimir ([drone.get_altitude()] :: custom-switch) en pantalla ▶
aterrizar ▶
Sombrero#
El bloque Hat proporciona un espacio para definir una función de Python. Los bloques que se adjuntan debajo de Hat se convierten en el cuerpo de esa función.
[] :: hat custom-switch
Escriba la definición de una función Python en el bloque Hat. Los parámetros van dentro de los paréntesis. Si la función no usa parámetros, deje los paréntesis vacíos.
[def function_name(parameter):] :: hat custom-switch
[def take_off_500():] :: hat custom-switch
[Define a custom function using a Hat block.]
despegar a [500] [mm v] ▶
cuando inicie
[take_off_500()] :: custom-switch