Cambiar#
Introducción#
Los bloques Switch permiten a los estudiantes escribir código Python directamente en un entorno basado en bloques. Este enfoque ayuda a reducir la brecha entre la programación basada en bloques y la basada en texto. Al permitir a los usuarios ver cómo los comandos de bloque se convierten a Python, los bloques Switch facilitan el aprendizaje de técnicas de codificación basada en texto dentro de una interfaz familiar. El uso de bloques Switch puede simplificar la lógica avanzada, los cálculos y las llamadas a funciones, sin dejar de usar bloques normales.
Pila#
El bloque Switch Stack se utiliza para ejecutar comandos Switch de Python escritos dentro del espacio abierto del bloque.
Están diseñados para colocarse encima o debajo de otros bloques de acción.
[] :: custom-switch
Los bloques Switch Stack se pueden usar para líneas individuales de comandos Switch de Python o para líneas múltiples.
Para que un bloque Switch Stack funcione como está previsto, los comandos Switch de Python deben ingresarse con la ortografía, la puntuación y la sangría correctas.
cuando empieza :: hat events
[Avanzar 400 mm]
[robot.move_for(400, 0)] :: custom-switch
Bloque C#
El bloque Switch C Block se utiliza para hacer un bucle con los bloques dentro hasta que se cumpla la condición en el espacio abierto del bloque.
Tienen forma para fijar pilas u otros bloques C encima, debajo o dentro de ellos.
if [] :: custom-switch
fin
Algunos posibles comandos Switch de Python para usar con el bloque Switch C incluyen:
while
if
for
Para que un bloque Switch C funcione como está previsto, los comandos Switch de Python deben ingresarse con la ortografía, la puntuación y la sangría correctas.
cuando empieza :: hat events
[Gire continuamente hacia la derecha hasta que se presione la pantalla.]
giro [derecha v]
por siempre
if [ if robot.screen.pressing(): ] :: custom-switch
imprimir [ ¡Se presionó la pantalla! ] en pantalla ▶
detener todo movimiento
fin
fin
C Expandible#
El bloque Switch C Expandible se utiliza para repetir los bloques dentro de una rama específica cuando se cumple la condición en el espacio abierto del bloque. Se pueden agregar ramas adicionales expandiendo el bloque.
Tienen forma para fijar pilas y otros bloques C encima, debajo o dentro de ellos.
if [] :: custom-switch-expand
fin
Algunos posibles comandos Switch de Python para usar con el bloque Switch C Expandable incluyen:
while
if
for
Para que un bloque Switch C Expandable funcione como está previsto, los comandos Switch de Python deben ingresarse con la ortografía, la puntuación y la sangría correctas.
cuando empieza :: hat events
[Avanza continuamente hasta que el robot tenga una pelota deportiva.]
por siempre
if [ if robot.has_sports_ball(): ] :: custom-switch-expand
imprimir [ ¡Se presionó la pantalla! ] en pantalla ▶
detener todo movimiento
else [else: ]
mover [adelante v]
fin
fin
Booleano#
The Switch Boolean block is used to return a condition as either True or False. These conditions are defined with Switch Python functions.
Tienen forma para encajar dentro de cualquier bloque con entradas hexagonales (de seis lados).
<[] :: custom-switch>
Los bloques Switch Boolean se pueden usar para líneas individuales de funciones Switch de Python que devolverán directamente una condición verdadera o falsa.
Los operadores permiten evaluar varias funciones Switch de Python en un único bloque booleano Switch. Esto incluye:
and
or
not
<[controller.button_up.pressing() and controller.button_down.pressing()] :: custom-switch>
Un bloque Switch Boolean también puede combinar funciones Switch de Python con operadores de comparación para evaluar cómo un valor devuelto se compara con el número dado utilizando los siguientes operadores:
Greater Than: >
Less Than: <
Equal to: =
Additional operators that can be used include <=, !=, and >=
<[robot.inertial.get_heading() > 100] :: custom-switch>
Para que un bloque Switch Boolean funcione como está previsto, los comandos Switch de Python deben ingresarse con la ortografía, la puntuación y la sangría correctas.
cuando empieza :: hat events
[Gire continuamente hacia la derecha hasta que se presione la pantalla.]
giro [derecha v]
por siempre
si <[robot.screen.pressing()] :: custom-switch> entonces
imprimir [ ¡Se presionó la pantalla! ] en pantalla ▶
detener todo movimiento
fin
fin
Reportero#
El bloque Switch Reporter se utiliza para devolver un valor numérico. Estas condiciones se definen con las funciones Switch de Python.
Tienen forma para encajar dentro de cualquier bloque con entradas circulares.
([] :: custom-switch)
Los bloques Switch Reporter se pueden usar para líneas individuales de funciones Switch de Python que devolverán directamente un valor numérico.
Se pueden usar funciones matemáticas para calcular valores dentro de un bloque Switch Reporter. Esto incluye, entre otros:
Addition: +
Subtraction: -
Division: /
Multiplication: *
([robot.inertial.get_heading() + 45] :: custom-switch)
Para que un bloque Switch Reporter funcione como está previsto, los comandos Switch de Python deben ingresarse con la ortografía, la puntuación y la sangría correctas.
cuando empieza :: hat events
[El rumbo actual del robot + 45 grados se imprimirá en la pantalla.]
imprimir ([robot.inertial.get_heading() + 45] :: custom-switch) en pantalla ▶
Sombrero#
El bloque Switch Hat se utiliza para ejecutar la pila de bloques adjunta cuando se llama a la función.
Están diseñados para colocarse encima de otros bloques de acción.
[] :: hat custom-switch
La pila de bloques adjunta es una función. El bloque “Switch Hat” define el nombre de la función y los parámetros opcionales.
Parameters should be enclosed in parentheses and followed by a colon as shown below. If a function has no parameters, use closed parentheses: ().
[def function_name(parameter):] :: hat custom-switch
Para que un bloque Switch Hat funcione como está previsto, los comandos Switch de Python deben ingresarse con la ortografía, la puntuación y la sangría correctas.
[def move_400():] :: hat custom-switch
[Define una función personalizada usando Switch Hat Blocks.]
mover [adelante v] para (400) [mm v] ▶
cuando empieza :: hat events
[move_400()] :: custom-switch