Blog
Juego en Python (El ahorcado) segunda parte
- Publicado por: Rafael Fernandez
- Categoría: Videojuegos

En esta segunda parte del juego del ahorcado, (la primera parte está en este post Juego en Python (El ahorcado)). Vamos a hacer un análisis acerca de las estructuras y funciones que desarrollamos y utilizamos en la construcción de nuestro código, como lo son las listas en Python.
Módulo import random
Como tenemos que utilizar una palabra al azar, es importante usar este módulo. Con este módulo, se elegirá una palabra al azar, con la cual jugaremos.
AHORCADO = [''' +---+ | | | | | | =========''', '''
Realmente, el resto del código, es muy largo para colocarlo aqui; sin embargo, la variable AHORCADO, es utilizada hasta el final de la llave ].
Con esta línea de código, hacemos una asignación de variables, que se extiende a lo largo de distintas líneas.
Líneas múltiples en lenguaje Python
Generalmente, si escribimos texto en nuestro código, este se sitúa en una sola línea. Sin embargo, si utilizas un grupo de tres comillas dobles al comenzar, y al terminar nuestro texto, podemos hacer que ocupe varias líneas. Por ejemplo:
#Ejemplo: >>>prueba = """hola esto es una prueba utilizando tres comillas"""
Si nosotros, no tuviéramos el recurso de las líneas múltiples en Python, tendríamos que escribir nuestro texto en el código, usando el comando \n, para indicar cada salto de línea. Sin embargo, con esto, nuestro código sería menos entendible.
Listas en python
Las listas en Python, son simples variables capaces de contener o albergar, muchos valores dentro de sí. Probemos escribir el texto siguiente en un shell interactivo en Python:
>>>colores = ["rojo", "azul", "naranja"] >>>print colores ["rojo", "azul", "naranja"]
Las listas son un excelente recurso para almacenar varios valores en una sola variable. Cada valor individual almacenado dentro de la lista, se llama elemento.
Puedes utilizar corchetes para acceder a un elemento ubicado dentro de una lista. Prueba escribir esto: colores[0], colores[1], colores[2].
>>>colores[0]="rojo" >>>colores[1]="azul" >>>colores[2]="naranja"
Recuerda que el número contenido entre los corchetes es el subíndice, que define la posición de un elemento albergado dentro de la lista. En Python, el primer subíndice es 0, en vez del número 1. Así que el primer elemento de la lista tiene subíndice 0, el segundo elemento tiene subíndice 1, y el tercer elemento tendrá subíndice 2, y así sucesivamente.
¿Qué sucede si ingresamos un índice mayor al índice más grande de la lista?
>>>colores[3]
Salida en pantalla:
IndexError: list index out of range
Como habrás adivinado, si intentamos acceder a un índice más grande del que tenemos en una lista, se nos devolverá un error fatal.
Cambiar valores de una lista en python
También podemos usar estos corchetes para cambiar los valores de los elementos en una lista. Probemos hacer lo siguiente en este shell:
>>>colores = ["rojo", "azul", "naranja", "amarillo"] >>>colores[1] = "verde" >>>print colores ["rojo", "verde", "naranja", "amarillo"]
El segundo elemento de la lista colores, se ha cambiado por otro valor.
Concatenación de listas en python
Otra cosa que podemos hacer es unir una lista a otra, usando el operador “+”. Prueba escribir lo siguiente en el shell:
>>>[1, 2, 3, 4] + ["azul", "rojo"] + ["Marcela", "Maria"] [1, 2, 3, 4, "azul", "rojo", "Marcela", "Maria"]
Aquí podemos notar que la listas pueden contener distintos tipos de datos. En el ejemplo anterior apreciamos una lista con números enteros y cadenas de texto.
El operador in en Python
Este operador hace que sea muy fácil verificar si existe un elemento en una lista. Las expresiones que usan el operador in devuelven un valor booleano: Envían True si un elemento está en una lista, y False si no se encuentra.
Prueba hacer lo siguiente:
>>>colores = ["azul", "rojo", "naranja", "amarillo"] >>>"amarillo" in colores True >>>"verde" in colores False
También puedes usar el operador in en una cadena de texto. Así puedes verificar si se encuentra una palabra específica:
>>>"hola" in "hola como estas?" True
Eliminar elementos de una lista en Python
Si quieres eliminar un elemento de una lista, usa el comando del.
Para probar, haremos una lista con números enteros, y eliminaremos uno de ellos:
>>>num = [1, 2, 3, 4, 5] >>>del num[0] #Borramos el primer elemento de la lista >>>num [2, 3, 4, 5]
Al hacer esto cambiarán los subíndices de los elementos de la misma, ya que se “rotaran” de lugar, en cierta manera.
¿Cómo hacer una lista de listas en Python?
Las listas también pueden estar constituidas por otras listas. Supongamos por un momento que tenemos una lista de países, una de nombres, y otra de ciudades. Se puede hacer una sola lista, que contenga a estas tres. Por ejemplo:
>>>paises = ["España", "Mexico", "Francia", "Italia", "Inglaterra"] >>>nombres = ["Jose", "Carlos", "Edgardo"] >>>ciudades = ["Milan", "Madrid"] >>>listaGeneral = [paises, nombres, ciudades] #Aqui tenemos tres listas dentro de una >>>listaGeneral [["España", "Mexico", "Francia", "Italia", "Inglaterra"] , ["Jose", "Carlos", "Edgardo""] , ["Milan", "Madrid"]]
Si queremos obtener un elemento de nuestra listaGeneral, podemos usar dos pares de corchetes: listaGeneral[0][2], y obtendremos como resultado “Francia”. Ya que el [0], significa subíndice 0 de listaGeneral, por lo tanto es la lista de países, el [2] es subíndice 2 de la lista de países, entonces el elemento a mostrar es “Francia”.
Esta es otra forma de hacerlo, con la que obtendríamos los mismos resultados:
>>>listaGeneral = [["España", "Mexico", "Francia", "Italia", "Inglaterra"] , ["Jose", "Carlos", "Edgardo""] , ["Milan", "Madrid"]] >>>paises = listaGeneral[0] #Le asignamos a paises la primera lista de listaGeneral >>>nombres = listaGeneral[1] #Le asignamos a nombres la segunda lista de listaGeneral >>>ciudades = listaGeneral[2] #Le asignamos a ciudades la tercera lista de listaGeneral
En fin, espero hayas entendido todo esto acerca de las listas en Python y le saques provecho a estos recursos.