Control#
Introducción#
En Python, el control te permite indicarle al robot cuándo esperar, cuándo repetir acciones, cómo tomar decisiones y cuándo finalizar el proyecto.
A continuación se muestra una lista de los controles disponibles, incluidos los métodos y las palabras clave principales de Python:
wait– Pausa el proyecto durante un tiempo determinado.for– Repite el código para cada elemento en una secuencia.if– Ejecuta el código si una condición es verdadera.if/else– Ejecuta un código diferente dependiendo de una condición.if/elif/else– Comprueba múltiples condiciones en orden.while– Repite el código mientras una condición sea verdadera.break– Sale de un bucle inmediatamente.stop_program– Finaliza el programa en ejecución.pass– Marcador de posición utilizado cuando no se necesita ninguna acción.
esperar#
wait hace una pausa durante un tiempo específico antes de pasar a la siguiente línea de código.
Uso:wait(time, units)
Parámetros |
Descripción |
|---|---|
|
El tiempo de espera, expresado como un número entero positivo o decimal. |
|
La unidad que representa el tiempo de espera: |
# Build Used: Super Code Base 2.0
def main():
# Turn right for one second
drivetrain.turn(RIGHT)
wait(1, SECONDS)
drivetrain.stop()
# Start threads — Do not delete
start_thread(main)
para#
for repite un conjunto de acciones un número específico de veces. for se puede usar para recorrer elementos en listas, tuplas, diccionarios, conjuntos, cadenas o para una cantidad específica de bucles con range.
Uso:
for value in expression_list:
pass
Componentes |
Descripción |
|---|---|
|
Una variable temporal que almacena el elemento actual en la iteración. |
|
La colección de elementos que se recorren en un bucle (por ejemplo, lista, cadena, rango). |
# Build Used: Super Code Base 2.0
def main():
# Move in a square path
for index in range(4):
drivetrain.drive_for(FORWARD, 100, MM)
drivetrain.turn_for(RIGHT, 90)
# Start threads — Do not delete
start_thread(main)
si#
if ejecuta el bloque de código indentado si la condición es True.
Uso:
if condition:
pass
Componentes |
Descripción |
|---|---|
|
Una expresión o variable que se comprueba cuando se ejecuta la instrucción. Si es |
# Build Used: Super Code Base 2.0
def main():
# Turn when the bumper is pressed
while True:
if bumper.is_pressed():
drivetrain.turn_for(RIGHT, 90)
wait(0.1, SECONDS)
# Start threads — Do not delete
start_thread(main)
si/si no#
if y else determina qué bloque de código con sangría se ejecuta en función de si la condición es True o False.
Uso:
if condition:
pass
else:
pass
Componentes |
Descripción |
|---|---|
|
Una expresión o variable que se comprueba cuando se ejecuta la instrucción. Si es |
# Build Used: Super Code Base 2.0
def main():
# Turn when the bumper is pressed
while True:
if bumper.is_pressed():
drivetrain.turn(RIGHT)
else:
drivetrain.stop()
wait(0.1, SECONDS)
# Start threads — Do not delete
start_thread(main)
si/si/de lo contrario#
La estructura if/elif/else selecciona qué bloque de código sangrado se ejecuta según las condiciones:
ifejecuta su bloque si la condición esTrue.elifcomprueba condiciones adicionales solo si todas las condiciones anteriores sonFalse. Se pueden usar variaselifinstrucciones.elseejecuta su bloque solo si ninguna de las condiciones anteriores esTrue.
Uso:
if condition:
pass
elif condition:
pass
else:
pass
Componentes |
Descripción |
|---|---|
|
Una expresión o variable que se comprueba cuando se ejecuta la instrucción. La primera condición que es |
# Build Used: Super Code Base 2.0
def main():
# Change the LED while turning
drivetrain.turn(RIGHT)
while True:
if drivetrain.get_heading() < 120:
bumper.set_color(OFF)
elif drivetrain.get_heading() < 240:
bumper.set_color(RED)
else:
bumper.set_color(GREEN)
wait(0.2, SECONDS)
# Start threads — Do not delete
start_thread(main)
mientras#
while ejecuta repetidamente el código mientras la condición sea TrueTambién se puede usar como un “para siempre” usando True como condición, o un “esperar hasta” agregando not a la condición, como se muestra en los ejemplos a continuación.
Uso:
while condition:
pass
Componentes |
Descripción |
|---|---|
|
Una expresión o variable que se comprueba antes de cada iteración. Si es |
# Build Used: Super Code Base 2.0
def main():
# Turn when the bumper is pressed
while True:
if bumper.is_pressed():
drivetrain.turn(RIGHT)
else:
drivetrain.stop()
wait(0.1, SECONDS)
# Start threads — Do not delete
start_thread(main)
# Build Used: Super Code Base 2.0
def main():
# Turn the other direction when the bumper is pressed
drivetrain.turn(LEFT)
while not bumper.is_pressed():
wait(0.2, SECONDS)
drivetrain.turn(RIGHT)
# Start threads — Do not delete
start_thread(main)
romper#
break sale de un bucle inmediatamente. break se puede usar para salir de bucles que de otro modo se repetirían indefinidamente.
Uso:
break
Parámetros |
Descripción |
|---|---|
Esta palabra clave no tiene parámetros. |
# Build Used: Super Code Base 2.0
def main():
# Stop turning after pressing the bumper
while True:
drivetrain.turn(RIGHT)
if bumper.is_pressed():
break
wait(0.2, SECONDS)
drivetrain.stop()
bumper.set_color(RED)
# Start threads — Do not delete
start_thread(main)
detener_programa#
stop_program finaliza un proyecto en ejecución.
Usage:stop_program()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
# Build Used: Super Code Base 2.0
def main():
# Stop the project after pressing the bumper
while True:
drivetrain.turn(RIGHT)
if bumper.is_pressed():
break
wait(0.2, SECONDS)
stop_program()
# Start threads — Do not delete
start_thread(main)
aprobar#
pass es un marcador de posición para código futuro y se puede utilizar para evitar errores en bucles vacíos, condicionales y funciones.
Uso:
pass
Parámetros |
Descripción |
|---|---|
Esta palabra clave no tiene parámetros. |
if condition:
pass
def function():
pass