Funciones#
Introducción#
Las funciones son un componente fundamental de la programación en Python, ya que empaquetan fragmentos de código en secciones reutilizables y eficientes diseñadas para realizar una tarea específica. Se pueden llamar varias veces dentro de un programa, lo que facilita la organización del código y ayuda a evitar la repetición de código. Además, las funciones facilitan la depuración del código.
Importante: Definir una función por sí sola no la hace ejecutarse. Use cte_thread para iniciar una función en un nuevo hilo para que comience a ejecutarse inmediatamente al inicio del proyecto, en lugar de esperar un evento o una devolución de llamada.
defdefine una función.returnenvía la salida de la función de vuelta al programa principal.
Uso:
def function_name(parameters):
# Code to execute when the function is called
return result # Optional, used to return a value
Parámetros |
Descripción |
|---|---|
|
Un nombre que le das a tu función. |
|
Opcional. Variables que aceptan valores de entrada cuando se llama a la función, lo que permite pasar datos a la misma. |
|
Opcional. Permite que la función devuelva un resultado a quien la llama. Si una función no incluye una instrucción return, devolverá |
Nota: Una función debe siempre estar definida antes de ser llamada.
Definición y llamada de funciones#
Functions with No Parameters#
Si una función no requiere entrada, puede definirla sin parámetros.
def greeting():
brain.print("Hello!")
# Call the greeting function
greeting()
Functions with Parameters#
También puedes añadir parámetros a las funciones, lo que te permite pasarles la información que necesitan para funcionar.
def move_square(moves):
for index in range(moves):
arm.move_inc(100, 0, 0)
arm.move_inc(0, 100, 0)
arm.move_inc(-100, 0, 0)
arm.move_inc(0, 100, 0)
# Call the move_square function
move_square(4)
Functions with Default Arguments#
Un argumento predeterminado es un parámetro que asume un valor predeterminado si no se proporciona un valor en la llamada a la función para ese argumento.
def move_square(moves=4):
for index in range(moves):
arm.move_inc(100, 0, 0)
arm.move_inc(0, 100, 0)
arm.move_inc(-100, 0, 0)
arm.move_inc(0, 100, 0)
# Call the move_square function
move_square()
Return Values from Functions#
Las funciones pueden devolver datos a quien las llama mediante la palabra clave return . Esto permite capturar y utilizar la salida en el programa.
def times_two(number):
return number * 2
# Display the return value
print(times_two(2))
hilo cte#
cte_thread inicia una función en un nuevo hilo para que comience a ejecutarse inmediatamente al inicio del proyecto.
Si se utiliza más de un cte_thread , las funciones se ejecutarán simultáneamente.
Usage:
cte_thread(function)
Parámetro |
Descripción |
|---|---|
|
El nombre de una función definida previamente. |
def move_square():
# Move in a square path
while True:
arm.move_inc(100, 0, 0)
arm.move_inc(0, 100, 0)
arm.move_inc(-100, 0, 0)
arm.move_inc(0, 100, 0)
def lights():
# Set the Signal Tower to start blinking the blue LED
signal_tower.set_color(SignalTower.BLUE, SignalTower.BLINK)
# Start threads — Do not delete
cte_thread(move_square)
cte_thread(lights)