2.1. Tu primer script

Un script de Python es una secuencia de instrucciones guardada en un archivo de texto con la extensión .py. La OpenMV Cam ejecuta el script que esté abierto en ese momento en el IDE cuando pulsas el botón verde Run, e imprime cualquier salida en el terminal serie del IDE situado en la parte inferior de la ventana.

El script más sencillo posible es de una sola línea:

print("Hello, OpenMV!")

Al pulsar Run se envía este script a la cámara, que lo ejecuta e imprime el mensaje de vuelta en el IDE.

2.1.1. Qué hace print

print() es una función incorporada: un fragmento de código que reside dentro del firmware y está siempre disponible sin ninguna configuración. Pásale uno o varios valores entre paréntesis e imprimirá una representación textual de esos valores en el IDE.

Puedes pasar a print() cualquier cosa, no solo texto:

print(42)
print(3.14)
print("temperature", 25)

Los múltiples argumentos se separan con espacios en la salida:

>>> temperature 25

2.1.2. Comentarios

Un # inicia un comentario: el resto de la línea es ignorado por Python. Usa los comentarios para explicar por qué el código hace lo que hace; el propio código ya muestra qué hace.

# Send a startup banner over the serial terminal.
print("camera ready")

print("running")  # Marker for the operator monitoring the IDE.

En Python no existe una sintaxis separada para los comentarios de varias líneas. Comenta varias líneas de forma individual, o selecciona las líneas en el IDE y pulsa Ctrl+/ para activarlas y desactivarlas.

2.1.3. La sangría importa

Python usa la sangría (el espacio en blanco al principio de una línea) para agrupar líneas relacionadas. Dentro de una función, una sentencia if o un bucle, cada línea que pertenece al bloque se sangra en la misma cantidad (la convención son cuatro espacios). Mezclar tabulaciones y espacios o cambiar el ancho de la sangría dentro de un bloque es un error de sintaxis.

Las sentencias de nivel superior, como las llamadas a print anteriores, se sitúan en la sangría cero. Los bloques sangrados aparecen en cuanto empiezas a escribir ramas y bucles.

Truco

El IDE aplica la sangría automáticamente en cuanto terminas una línea que acaba en :. Si alguna vez obtienes un misterioso IndentationError, selecciona el bloque problemático y pulsa Tab / Shift+Tab para realinearlo.

2.1.4. Ejecutar el script de nuevo

Cada vez que pulsas Run, la cámara detiene lo que estuviera haciendo, carga el script actual y empieza desde el principio. No hay un paso de compilación separado. Cambia una línea, pulsa Run de nuevo y la nueva salida aparece en el terminal.

Para que un script se ejecute automáticamente cada vez que la cámara se enciende, guárdalo como main.py en el sistema de archivos de la cámara.