0% encontró este documento útil (0 votos)
318 vistas14 páginas

Tutorial de Python: Conciencia Ecológica

Este documento presenta tres actividades para enseñar programación en Python relacionadas con la concientización ambiental. La primera actividad enseña a crear arte ASCII imprimiendo dibujos con caracteres. La segunda actividad enseña a usar la librería time, ingresar datos por teclado y concatenar cadenas para crear un saludo personalizado. La tercera actividad enseña a usar la librería turtle, definir funciones e importar imágenes para crear un juego animado con fondo marino.

Cargado por

Any Ely
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
318 vistas14 páginas

Tutorial de Python: Conciencia Ecológica

Este documento presenta tres actividades para enseñar programación en Python relacionadas con la concientización ambiental. La primera actividad enseña a crear arte ASCII imprimiendo dibujos con caracteres. La segunda actividad enseña a usar la librería time, ingresar datos por teclado y concatenar cadenas para crear un saludo personalizado. La tercera actividad enseña a usar la librería turtle, definir funciones e importar imágenes para crear un juego animado con fondo marino.

Cargado por

Any Ely
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

TUTORIALES Y BUENAS PRÁCTICAS - PYTHON

TUTORIAL DEL EJERCICIO I – Trinket (con conexión a internet)

Ide Trinket

Trinket es embebido en cualquier navegador y no requiere instalación. Solo acceder a


[Link]

Se sugiere registrarse en el Trinket. En la ventana de la izquierda se escribe el código, y luego de hacer


click en “Run”, el código se ejecuta del lado derecho. Luego del registro, el programa puede guardarse
para su reutilización es otro momento.

Enunciado

A partir de las distintas problemáticas que surgen de la basura y la contaminación y que condicionan
nuestro derecho a un ambiente sano, deben realizar un programa que permita al usuario reconocer
esas problemáticas creando conciencia ecológica en cada acción que realice.

Contenidos:

 tipos de variables

 manejo de input output

 manejo de gráficos e imágenes

 uso de librerías

 sentencias de decisión

 bucles

 uso de librerías

Actividad 1

Arte ASCII

Para concientizar sobre la importancia de mantener limpia la ciudad, van a realizar carteles y señales
sobre el cuidado del medio ambiente.

Versión 090518 1
Realicen un dibujo mediante combinaciones de impresiones de código ASCII. El objetivo de la actividad
es:

 Imprimir en pantalla.

 Conocer acerca de los códigos ASCII y su impresión en pantalla.

 Documentar Software mediante comentarios.

¿Vieron alguna vez esos dibujos hechos con símbolos?

(\___/)
(>’.’<)
(“)_(“)

¿Reconocen los caracteres utilizados? Todos estos caracteres están incluidos en el código ASCII que
pueden ver en el glosario. De eso se trata el “Arte ASCII”. La idea es realizar un dibujo usando símbolos
y caracteres ingeniosamente ubicados durante la impresión en pantalla.

En Python 2.7 cada línea que se muestra por pantalla se inicia con la instrucción “print”. Lo que quiero
visualizar , un carácter o una cadena de caracteres o string, deberá ir encerrado entre dos apostrofes
“ ”. Así, manejando adecuadamente los espacios puedo conformar un rectángulo imprimiendo
caracteres “+”, “-” y “|”. Por ejemplo:

# En las siguientes líneas muestro un cartel en la pantalla

print ' +------------------------------+'

print ' | PROTEJAMOS AL MEDIO AMBIENTE |'

print ' +------------------------------+'

El entorno Trinket me mostrará el texto en otro color (verde) para diferenciar el renglón de comentarios
del de código a ejecutar.

Como parte de las buenas prácticas es recomendable documentar el software (para que otros o cada
uno de nosotros en el futuro podamos entenderlo), una forma simple consiste en “comentar” el
programa. En Python, el comentario de una línea se logra anteponiendo el símbolo “#” y el programa
no ejecutará el código comentado.

Desarrollo de enunciado actividad 1:

 Abran un Trinket: Llámenlo “arte_ascii”.

 Tipeen el siguiente código, grábenlo y ejecútenlo.

Versión 090518 2
Código de arte_ascii:

# Este programa imprime en pantalla arte ascii

print 'Una Persona:'

print ' \ O /'

print ' [ ]'

print ' / \ '

print ''

print 'Un Perro:'

print ' Q /'

print ' #####'

print ' || ||'

print ''

# Confección de texto compuesto

print 'Texto compuesto por caracteres ASCII'

print '+------------------------------------+'

print '| ### ### ## # ## ## # ## |'

print '| # # # # # # # # # # # # |'

print '| # # # # # # # # # # # |'

print '| ### # # # # # # # ## # #### |'

print '| # # # # # # # # # # # # |'

print '| # # # # # # # # # # # # |'

print '| ### ### ## ### ## ## # # # |'

print '+------------------------------------+'

Salida en pantalla derecha (Trinket Result):

Versión 090518 3
Guarden el trabajo.

Actividad 2:

Para realizar campañas sobre el cuidado del medio ambiente, hay que considerar la edad de la población
a la que van dirigidas.

Realicen un programa que les pregunte nombre y año de nacimiento. Luego imprimir en pantalla un
saludo con el nombre y la edad que cumplen este año. El objetivo de la actividad es:

 Usar Librerías.

 Usar la librería “time” para manejo de fechas.

 Ingresar datos por teclado.

 Armar una cadena con diferentes datos.

Introducción a Librerías:

Las librerías son herramientas de software hechas por desarrolladores que permiten realizar acciones
específicas. En Python se las llama con la sentencia “import”. Sin embargo, para definir qué parte de la
librería se desea es común usar: “from (nombre) import (lo que necesito)”, cuando necesito usar varios
componentes de la librería uso el carácter asterisco. Para aprender más de librerías vean el glosario.

from time import *

En este ejemplo, se importará la librería “time” completa.

Versión 090518 4
Uso de la librería “time”:

Esta librería se especifica en el manejo de tiempos y fechas.

from time import *

nacimiento=input('En que año naciste?')

ahora=int(strftime('%Y', gmtime()))

edad=int(ahora)-int(nacimiento)

print( edad)

En esta porción de código el programa invita a que ingresen el año de nacimiento. La variable “ahora”
es la fecha actual en formato año (%Y). Al poner “int(algo)” a ese “algo” lo convierte a número entero,
para operar y la edad obtenida la resta entre el año actual y el año de nacimiento.

Ingreso de datos por teclado:

Mediante la función “input” puede solicitarse al usuario que ingrese datos por teclado. La sintaxis es:
variable=input('pregunta'). Aparecerá en pantalla la pregunta, y el valor que el usuario ingrese por
teclado hasta presionar “enter”, luego se almacenará en la variable elegida.

nombre=input('Ingresa tu nombre')

Armado de cadenas:

Muchas veces se requiere armar una oración formada por diferentes textos, algunos, variables. En
Python los textos se transforman en cadenas encerrándolos con comillas simples o dobles. Si se quiere
concatenar ese texto con el contenido de una variable, se usa “+” y “str(variable)”

cadena='Hola, Mundo! Soy '+str(nombre)+' y este año cumplo '+str(edad)+' años.'

Desarrollo del enunciado actividad 2:

 Abran un nuevo Trinket. Llámenlo “saludo”

 Tipeen el siguiente código, grábenlo y ejecútenlo.

Código de saludo:

Versión 090518 5
from time import *

nombre=input('¿Como te llamas?')

nacimiento=input('En que año naciste?')

ahora=int(strftime('%Y', gmtime()))

edad=int(ahora)-int(nacimiento)

cadena='Hola, Mundo! Mi nombre es '+str(nombre)+' y este año cumplo '+str(edad)+' años.'

print cadena

Salida de pantalla:

Actividad 3:

Con el objetivo de crear conciencia sobre el cuidado de las playas y mares, dado que también son
contaminados por los desechos que se arrojan, trabajarán con un fondo marino.

Programen un juego que contenga una pantalla con un fondo obtenido a partir de una imagen y sobre
él presenten un objeto que responderá a las siguientes instrucciones: adelantar, atrasar, girar a la
derecha y girar a la izquierda, por cada presión de las teclas de flechas: arriba, abajo, derecha e
izquierda. El objetivo de la actividad es:

 Usar la librería “turtle”.

 Definir el uso de funciones.

 Usar imágenes y teclado para animar objetos.

La librería “turtle”:

La librería “Turtle” está basada en el lenguaje Logo desarrollado por Wally Feurzig and Seymour Papert
para la enseñanza de programación en niños “. Dicho lenguaje se desarrolló como librería y hoy está
disponible en Python. Permite dibujar y crear animaciones de modo sencillo. Algunos métodos y/o
atributos son:

 color()

 shape(forma)

 goto(x,y)
Versión 090518 6
 pendown()

Un ejemplo de uso:

import turtle

tortuga=[Link]() # crea un objeto “tortuga”

[Link]("turtle") # forma de tortuga

[Link]("green") # tendrá color verde

[Link]()

[Link](100,200) # se moverá a la posición (100,200) sin dejar huella.

Funciones:

Una función es un conjunto de código que se ejecuta solo cuando es llamado. Puede recibir parámetros
o no. El uso de funciones evita repetir código y su uso es sugerido para tener buenas prácticas de
programación, se puede saber más de este concepto en el glosario.

A continuación se presenta un ejemplo de definición de una función con su correcta sintaxis y un


llamado a dicha función:

def realizar_calculo (parámetro): # inicio de la definición de la función

# “realizar_calculo”.

x=parametro**2 # eleva parametro al cuadrado

y=2*parametro+1

punto=(x,y)

return punto # fin de la definición de la función

# “realizar_calculo”.

nueva_posicion=realizar_calculo(5) # devolverá (25,11)

Notar que para que pueda ejecutarse un llamado a la función, ésta deberá haberse definido
previamente (antes del llamado).

Imágenes y animación de objetos usando la librería “turtle”:

Versión 090518 7
“Turtle” posee métodos y funciones que permiten que pueda programarse muy fácilmente la animación
de un objeto.

Una animación básica consiste en un objeto que puede moverse automáticamente o controlado por
botones sobre un fondo. Tanto el fondo como el objeto pueden lograrse a partir de archivos de
imágenes importados.

Para poder importar imágenes en el IDE Trinket, podemos subirlos desde cualquier ubicación de la PC
haciendo click en (símbolo indicado en verde):

Para definir el fondo:

# El fondo: Fondo del mar (archivo '[Link]')

import turtle

screen = [Link]()

# Tamaño de la pantalla

[Link](500, 400)

# Imagen del fondo

[Link]('[Link]')

Para el objeto:

# El objeto a animar: Una tortuga verde

[Link]('turtle')

[Link]('green')

Para mover el objeto por teclado, se definen los movimientos:

 mover hacia adelante

 mover hacia atrás

 rotar hacia la derecha

 rotar hacia la izquierda

velocidad_de_movimiento = 10

Versión 090518 8
velocidad_de_giro = 10

def adelantar():

[Link](velocidad_de_movimiento)

def girar_a_la_izquierda():

[Link](velocidad_de_giro)

Luego, a cada tecla se le asocia una función de movimiento. Observar que “[Link]” recibe dos
parámetros: la función de movimiento, y la tecla asignada.

[Link](adelantar, 'Up')

[Link](girar_a_la_izquierda, 'Left')

Finalmente, hay que poner a la pantalla a “escuchar” el ingreso por teclado.

[Link]()

Desarrollo del enunciado actividad 3:

 Abran un nuevo Trinket

 Tipeen el siguiente código. Llámenlo ‘[Link]’ y ejecútenlo.

Código de ‘[Link]’:

import turtle

import os

screen = [Link]()

# Imagenes

# Tamaño de la pantalla

[Link](500, 400)

# Imagen del fondo

archivo_fondo="[Link]"

[Link](archivo_fondo)

# El objeto a animar: Una tortuga verde

[Link]('turtle')
Versión 090518 9
[Link]('green')

# Seteo del movimiento

velocidad_de_movimiento = 10

velocidad_de_giro = 10

# Funciones de movimiento

def adelantar():

[Link](velocidad_de_movimiento)

def atrasar():

[Link](velocidad_de_movimiento)

def girar_a_la_izquierda():

[Link](velocidad_de_giro)

def girar_a_la_derecha():

[Link](velocidad_de_giro)

[Link]()

[Link](0)

[Link]()

# Asociar las funciones de movimiento con presión de teclas

[Link](adelantar, "Up")

[Link](atrasar, "Down")

[Link](girar_a_la_izquierda, "Left")

[Link](girar_a_la_derecha, "Right")

[Link]()

[Link]()

Salida de Pantalla:

Versión 090518 10
Actividad 4:

A partir de la utilización de formas y colores, tendrán que armar el mensaje ¨Salvemos el planeta¨.

Creen una pantalla de 400x400 píxeles, asígnenle un color, escriban un texto en otro color, dibujen un
círculo y un rectángulo, todo en diferentes colores y ubicaciones. El objetivo de la actividad es:

 Usar colores almacenados, en hexa o en formato RGB.

 Usar colores en textos o en formas estándar.

 Dibujar formas

Los colores: representación

La función “color” de la librería “turtle” pintará a los posteriores objetos que se generen con el color
que se presenta como argumento. Hay dos formas muy usadas para la representación de colores:

 Por su nombre: varios colores ya están definidos por su nombre en inglés. Algunos de ellos son:
red, blue, green, yellow, black, white, y más.

Versión 090518 11
 Por sus componentes RGB: Un color se puede representar como una terna donde el primer
componente corresponde a la cantidad de rojo (R), el segundo componente corresponde a la
cantidad de verde (G) y el tercer a la cantidad de azul (B). Cada cantidad se corresponde con un
número entre 0 y 255. Por ejemplo: color(250,15,64). Algunos ejemplos: rojo=color(255,0,0),
amarillo=color(255,255,0), verde=color(0,255,0), azul=color(0,0,255),
blanco=color(255,255,255), negro=color(0,0,0).

Animación y movimiento del cursor mediante la librería “turtle”

La librería “turtle” brinda facilidades para el movimiento del cursor útiles también para dibujar. Algunas
se presentan a continuación:

 forward(x): se mueve “x” píxeles hacia adelante.

 Backward(x): se mueve “x” píxeles hacia atrás.

 right(y): rota “y” grados hacia la derecha.

 left(y): rota “y” grados hacia la izquierda.

 Penup(): levanta el lápiz y deja de escribir.

 pendown(): baja el lápiz y empieza a escribir.

El siguiente ejemplo muestra un código que dibuja un triángulo equilátero de 100 píxeles de lado, con
los lados dibujados en rojo.

From turtle import *

color('red')

pendown()

forward(100)

right(60)

forward(100)

right(60)

forward(100)

right(60)

hideturtle()

Desarrollo del enunciado actividad 4

Abran un trinket. Tipeen el código que figura abajo. Llámenlo ‘colores’.

Versión 090518 12
El código ‘colores’:

from turtle import *

# La pantalla

screen=Screen()

[Link](400,400)

# Formamos color de fondo en RGB

rojo=50 # cantidad de Rojo (entre 0 y 255)

verde=255 # cantidad de Verde (entre 0 y 255)

azul=50 # cantidad de azul (entre 0 y 255)

[Link](rojo,verde,azul)

# El texto

rojo=255

verde=255

azul=255

color(rojo,verde,azul)

style=('Arial',13,'bold')

write('SALVEMOS EL PLANETA',font=style,align='center')

# El círculo:

penup()

goto(10,-100)

rojo=10 # cantidad de Rojo (entre 0 y 255)

verde=10 # cantidad de Verde (entre 0 y 255)

azul=255 # cantidad de azul (entre 0 y 255)

color(rojo,verde,azul)

dot(100)

goto(-140,60)

color('yellow')

pendown()

Versión 090518 13
forward(280)

right(90)

forward(100)

right(90)

forward(280)

right(90)

forward(100)

hideturtle()

Salida de Pantalla

Versión 090518 14

También podría gustarte