Refactorización de Juegos en Python: Uso de Funciones
Clase 15 de 44 • Curso de Python: Comprehensions, Funciones y Manejo de Errores
Contenido del curso
- 6

List Comprehension en Python: Sintaxis y Ejemplos Prácticos
08:44 - 7

Comprensión de Diccionarios en Python: Ejemplos y Aplicaciones
11:57 - 8

Dictionary Comprehension con Condicionales en Python
07:34 - 9
Playgrounds: Crea una lista usando List Comprehension
00:00 - 10

Comparación de Listas, Tuplas y Conjuntos en Python
02:44
- 11

Funciones en Programación: Creación y Uso en Python
09:47 - 12

Funciones en Python: Retorno de Valores y Reutilización de Código
10:03 - 13

Funciones en Python: Retorno múltiple y valores por defecto
06:30 - 14

Entendiendo el Scope en Python: Variables y Funciones
07:54 - 15

Refactorización de Juegos en Python: Uso de Funciones
15:10 - 16
Playgrounds: Tienda de Tecnología
00:00 - 17

Funciones Lambda en Python: Sintaxis y Aplicaciones Prácticas
06:39 - 18

Funciones de Orden Superior en Python: Concepto y Ejemplos Prácticos
08:48 - 19

Uso de la función map en Python para transformar listas
08:43 - 20

Transformaciones con Map en Diccionarios Complexos
09:56 - 21

Manejo de referencias en memoria con diccionarios y map en Python
04:13 - 22
Playgrounds: Multiplica todos los elementos por dos
00:00 - 23

Filtrado de listas con Filter en Python
09:19 - 24
Playgrounds: Retorna solo palabras de 4 letras y más
00:00 - 25

Uso de Reduce en Python para Manipular Listas
07:46
- 31

Control manual de iteradores en Python con next
06:33 - 32

Errores y Excepciones en Python: Identificación y Manejo Básico
08:28 - 33

Manejo de Errores en Python: Uso de Try y Except
08:18 - 34
Playgrounds: Captura la excepción: ZeroDivisionError
00:00 - 35

Lectura y manejo de archivos de texto en Python
06:52 - 36

Lectura y escritura de archivos de texto en Python
06:11 - 37

Procesamiento de Archivos CSV en Python para Análisis de Datos
15:49 - 38
Playgrounds: Lee un CSV para calcular el total de gastos
00:00
¿Cómo refactorizar un juego utilizando funciones?
Has llegado al momento de poner a prueba tus conocimientos de Python y funciones a través de un proyecto práctico: la refactorización del clásico juego de "piedra, papel o tijera". Al eliminar el uso de variables globales y organizar mejor el código, logramos hacerlo más legible y mantenible. Ahora nos sumergiremos en cómo aplicar funciones para mejorar este juego y su estructura.
¿Cuál es el primer paso para aplicar funciones al juego?
El primer paso es identificar responsabilidades en el código. Por ejemplo, podemos crear una función cuya única responsabilidad sea elegir las opciones tanto del usuario como de la computadora. Esta función simplifica la lectura del código y asegura que cada parte del mismo solo se encargue de una tarea específica.
def choose_options():
# Código que selecciona opciones del usuario y la computadora
# y valida si son válidas.
# Si no son válidas, retorna None.
¿Cómo separar las reglas del juego en otra función?
Otra buena práctica es extraer la lógica que define las reglas del juego en función separada. Esto ayuda a aislar la lógica compleja y hace que el código principal sea más fácil de entender.
def check_rules(user_options, computer_options):
# Código que valida las reglas y retorna los puntajes actualizados.
¿Cómo crear la función principal del juego?
La función principal debería ser un punto de entrada claro para el juego, ejecutando todas las otras funciones necesarias para correr el juego adecuadamente.
def run_game():
user_wins = 0
computer_wins = 0
rounds = 0
while True:
# Llamadas a funciones y lógica del ciclo
user_options, computer_options = choose_options()
user_wins, computer_wins = check_rules(user_options, computer_options, user_wins, computer_wins)
¿Cómo mejorar la mantenibilidad del código con funciones?
Refactorizar el código usando funciones reduce errores y simplifica futuras modificaciones o añadidos. Es importante siempre mantener cada función enfocada en una única responsabilidad, lo cual promueve un diseño de código más limpio y profesional. Al final, las funciones actúan como bloques independientes pero interconectados, cada uno resolviendo una parte del problema de programación total.
Utiliza este enfoque para todos tus proyectos futuros. Te hará un mejor programador y te facilitará el trabajo en equipo, ya que otros podrán entender tu código de manera más rápida y clara. Sigue practicando y atrévete a modificar el código de maneras distintas para encontrar la que mejor se adapte a ti. ¡No dudes en seguir adelante porque el aprendizaje nunca se detiene cuando se trata de programación!