Curso-lenguaje-python/python-total/README.md
Manuel Vergara 2f487dd086 Update README python-total
Signed-off-by: Manuel Vergara <manuel@vergaracarmona.es>
2023-09-17 22:39:19 +02:00

484 lines
18 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Apuntes de python de python-total
Estos apuntes y ejercicios en python han sido realizados en el trascurso del curso de python-total de [Federico Garay](https://ar.linkedin.com/in/fedegaray):
- [Python-total](https://www.udemy.com/course/python-total)
¡Te recomiendo que hagas el curso y redactes tus propios apuntes! Este repositorio es para mi uso personal, pero si te sirve de ayuda, ¡pues me alegro!
Quizá encuentres aquí cosas que no están en el curso, o viceversa, son apuntes personales 😊
![](https://media.giphy.com/media/LYBHgc2yiO07G3dkkQ/giphy.gif)
## Índice del curso y apuntes realizados
- [Día 1 - Programa un creador de nombres](dia_01/README.md)
- 1.1. - print
- 1.2. - strings
- 1.3. - input
- 1.4. - Proyecto del Día 1
- [Día 2 - Programa un calculador de comisiones](dia_02/README.md)
- 2.1. - Tipos de datos
- 2.2. - Variables
- 2.3. - Nombres de variables
- 2.4. - integers & floats
- 2.5. - Conversiones
- 2.6. - Formatear cadenas
- 2.7. - Operadores matemáticos
- 2.8. - Redondeo
- 2.9. - Proyecto del Día 2
- [Día 3 - Programa un analizador de texto](dia_03/README.md)
- 3.1. - Index( )
- 3.2. - Substrings
- 3.3. - Métodos para Strings
- 3.4. - Strings: propiedades
- 3.5. - Listas
- 3.6. - Diccionarios
- 3.7. - Tuples
- 3.8. - sets
- 3.9. - booleanos
- 3.10. - Proyecto del Día 3
- [Día 4 - Programa el juego "adivina el número"](dia_04/README.md)
- 4.1. - Operadores de comparación
- 4.2. - Operadores lógicos
- 4.3. - Control de flujo
- 4.4. - loops while
- 4.5. - range( )
- 4.6. - enumerate( )
- 4.7. - zip( )
- 4.8. - min( ) & max( )
- 4.9. - random
- 4.10. - Comprensión de listas
- 4.11. - match
- 4.12. - Proyecto del Día 4
- [Día 5 - Programa el juego "El ahorcado"](dia_05/README.md)
- 5.1. - Documentación
- 5.2. - Funciones
- 5.3. - return
- 5.4. - Funciones dinámicas
- 5.5. - Interacción entre funciones
- 5.6. - *args
- 5.7. - **kwargs
- 5.8. - Ejercicios
- 5.9. - Proyecto del Día 5
- [Día 6 - Programa un recetario](dia_06/README.md)
- 6.1. - Abrir y leer archivos
- 6.2. - Crear y escribir archivos
- 6.3. - Directorios
- 6.4. - pathlib
- 6.5. - Path
- 6.6. - Limpiar la consola
- 6.7. - Archivos + funciones
- 6.8. - Proyecto del Día 6
- [Día 7 - Programa una cuenta bancaria](dia_07/README.md)
- 7.1. - Clases
- 7.2. - Atributos
- 7.3. - Métodos
- 7.4. - Tipos de métodos
- 7.5. - Herencia
- 7.6. - Herencia extendida
- 7.7. - Polimorfismo
- 7.8. - Pilares de la Programación Orientada a Objetos
- 7.9. - Métodos especiales
- 7.10. - Proyecto del Día 7
- [Día 8 - Programa una consola de turnos](dia_08/README.md)
- 8.1. - Instalar paquetes
- 8.2. - Módulos y paquetes
- 8.3. - Manejo de errores
- 8.4. - pylint
- 8.5. - unittest
- 8.6. - Decoradores
- 8.7. - Generadores
- 8.8. - Proyecto del Día 8
- [Día 9 - Programa un buscador de números de serie](dia_09/README.md)
- 9.1. - Módulo collections
- 9.2. - Módulos shutil & os
- 9.3. - Módulo datetime
- 9.4. - Módulo para medir el tiempo
- 9.5. - Módulo math
- 9.6. - Expresiones regulares
- 9.7. - Comprimir y descomprimir archivos
- 9.8. - Proyecto del Día 9
- [Día 10 - Programa el juego "Invasión espacial"](dia_10/README.md)
- 10.1. - Distancia entre dos puntos
- 10.2. - Convertir el Juego en un Archivo Ejecutable (.exe)
- [Día 11 - Programa un web scraping](dia_11/README.md)
- 11.1. - Extraer elementos de una clase
- [Día 12 - Programa un gestor de restaurantes](dia_12/README.md)
- [Día 13 - Programa un asistente de voz](dia_13/README.md)
- 13.1. - Librerias y módulos
- 13.2. - Algunos problemas con las bibliotecas
- 13.3. - Enlaces
- [Día 14 - Programa un controlador de asistencia](dia_14/README.md)
- 14.1. - Bibliotecas
- [Día 15 - Programa un modelo de machine learning](dia_15/README.md)
- 5.1. - Bibliotecas
- 5.2. - Definiciones
- 5.3. - Cuadernos de trabajo en Colab de google drive
- [Día 16 - Programa una aplicación web de tareas pendientes](dia_16/README.md)
- 16.1. - Entornos Virtuales
- 16.2. - Módulos
- 16.3. - Preparación de estructura de trabajo
- 16.4. - Configurar url
- 16.5. - Crear tabla de tareas
- 16.6. - Configurar la vista
- 16.7. - Configurar la vista de Detalle
- 16.8. - Crear Links a Detalle
- 16.9. - Agregar nueva tarea
- 16.10. - Formulario para nueva tarea
- 16.11. - Editar tarea
- 16.12. - Eliminar tarea
- 16.13. - Crear la lógica de Logueo / Deslogueo
- 16.14. - Formulario de Logueo / Deslogueo
- 16.15. - Restringir acceso
- 16.16. - Información específica de usuario
- 16.17. - Registrar nuevo usuario
- 16.18. - Barra de búsquedas
- 16.19. - Un estilo para todas las vistas
- 16.20. - Estilo general
- 16.21. - Estilo de barra superiores
- 16.22. - estilo de la lista
- 16.23. - Estilo de la barra de cerca
- 16.24. - Terminar el sitio
- [Día 17 - Extra bibliotecas para hacking ético](dia_17/README.md)
[Apuntes en PDF](https://vergaracarmona.es/wp-content/uploads/2023/05/Apuntes_python_Manuel_Vergara.pdf)
## Índice de ficheros
```shell
python-total
├── dia_01
│   ├── main.py
│   ├── primer_proyecto.py
│   ├── programa01.py
│   └── README.md
├── dia_02
│   ├── 01_variables.py
│   ├── 02_Intengers_Floats.py
│   ├── 02_Intengers_math.py
│   ├── 03_Conversiones.py
│   ├── 04_format.py
│   ├── 05_operadores.py
│   ├── 06_programa02.py
│   └── README.md
├── dia_03
│   ├── 01_index.py
│   ├── 02_sub_strings.py
│   ├── 03_metodos.py
│   ├── 04_string.py
│   ├── 05_propiedades.py
│   ├── 06_listas.py
│   ├── 07_diccionarios.py
│   ├── 08_tuplas.py
│   ├── 09_set.py
│   ├── 10_booleanos.py
│   ├── 11_programa03.py
│   ├── __pycache__
│   └── README.md
├── dia_04
│   ├── 01_operadores_comparacion.py
│   ├── 02_operadores_logicos.py
│   ├── 03_control_de_frujo.py
│   ├── 04_for.py
│   ├── 05_while.py
│   ├── 06_rango.py
│   ├── 07_enumerador.py
│   ├── 08_zip.py
│   ├── 09_min_max.py
│   ├── 10_random.py
│   ├── 11_comprension_listas.py
│   ├── 12_match.py
│   ├── 13_programa04.py
│   └── README.md
├── dia_05
│   ├── 01_metodos_ayuda_docs.py
│   ├── 02_funciones.py
│   ├── 03_funciones_dinamicas.py
│   ├── 04_ejemplo_funcion.py
│   ├── 05_palito_mas_corto.py
│   ├── 06_lanzar_dados.py
│   ├── 07_limpiar_lista_promedio.py
│   ├── 08_lanzar_moneda.py
│   ├── 09_args_indeterminados.py
│   ├── 10_problemas_practicos.py
│   ├── 11_programa05.py
│   └── README.md
├── dia_06
│   ├── 01_abrir_manipular_archivos.py
│   ├── 02_crear_escribir_archivos.py
│   ├── 03_directorios.py
│   ├── 04_pathlib.py
│   ├── 05_path.py
│   ├── 06_limpiar_consola.py
│   ├── 07_programa06.py
│   ├── Europa
│   │   ├── Consejos.txt
│   │   ├── España
│   │   ├── Francia
│   │   └── Normativas.txt
│   ├── prueba.txt
│   ├── README.md
│   ├── Recetas
│   │   ├── Bebidas
│   │   ├── Carnes
│   │   ├── Ensaladas
│   │   ├── Pastas
│   │   ├── Postres
│   │   └── Verduras
│   └── Recetas.zip
├── dia_07
│   ├── 01_clases.py
│   ├── 02_atributos.py
│   ├── 03_metodos.py
│   ├── 04_tipos_metodos.py
│   ├── 05_herencia.py
│   ├── 06_herencia_extendida.py
│   ├── 07_polimorfismo.py
│   ├── 08_metodos_especiales.py
│   ├── 09_programa07.py
│   └── README.md
├── dia_08
│   ├── 01_pruebas_modulos
│   │   ├── moduloOcupado.py
│   │   ├── moduloVacio.py
│   │   └── __pycache__
│   ├── 02_pruebas_paquete
│   │   ├── ejercicio.py
│   │   └── paquete_ma
│   ├── 03_manejo_errores.py
│   ├── 04_probando_pylint.py
│   ├── 05_probando_pylint
│   │   ├── numeros.py
│   │   └── practica_pylint.py
│   ├── 06_probando_unittest
│   │   ├── cambia_texto.py
│   │   ├── prueba.py
│   │   └── __pycache__
│   ├── 07_decoradores.py
│   ├── 08_generadores.py
│   ├── 09_programa08
│   │   ├── numeros.py
│   │   ├── principal.py
│   │   └── __pycache__
│   └── README.md
├── dia_09
│   ├── 01_modulo_collections.py
│   ├── 02_modulo_os_shutil.py
│   ├── 03_modulo_datetime_1.py
│   ├── 03_modulo_datetime_2.py
│   ├── 04_modulo_medir_tiempo.py
│   ├── 05_modulo_math.py
│   ├── 06_modulo_re.py
│   ├── 07_modulo_comprimir_shutil.py
│   ├── 07_modulo_comprimir_zipfile.py
│   ├── 07_modulo_descomprimir_shutil.py
│   ├── 07_modulo_descomprimir_zipfile.py
│   ├── 08_Descomprimir_proyecto.py
│   ├── 09_Programa09
│   │   ├── buscador_num_serie.py
│   │   ├── Instrucciones.txt
│   │   └── Mi_Gran_Directorio
│   ├── carpeta_superior
│   │   ├── carpeta_1
│   │   ├── carpeta_2
│   │   ├── carpeta_3
│   │   ├── fichero1
│   │   └── fichero2
│   ├── extraccion_terminada
│   │   ├── carpeta_1
│   │   ├── carpeta_2
│   │   ├── carpeta_3
│   │   ├── fichero1
│   │   └── fichero2
│   ├── mi_texto_A.txt
│   ├── mi_texto_B.txt
│   ├── Proyecto+Dia+9.zip
│   ├── README.md
│   └── todo_comprimido.zip
├── dia_10
│   ├── fonts
│   │   ├── game_over.ttf
│   │   └── invaders.from.space.ttf
│   ├── img
│   │   ├── bala.png
│   │   ├── cohete.png
│   │   ├── enemigo.png
│   │   ├── extraterrestre.png
│   │   ├── Fondo.jpg
│   │   ├── ovni.png
│   │   ├── Penasolana_ajustada.jpg
│   │   └── Penasolana.jpg
│   ├── main.py
│   ├── README.md
│   └── sound
│   ├── disparo.mp3
│   ├── Golpe.mp3
│   └── MusicaFondo.mp3
├── dia_11
│   ├── 01_web_scraping_01.py
│   ├── 02_web_scraping_02.py
│   ├── mi_imagen.jpg
│   ├── nul
│   ├── programa_web_scraping.py
│   └── README.md
├── dia_12
│   ├── lista_precios.txt
│   ├── mi_restaurante.py
│   ├── Primer_recibo.txt
│   ├── README.md
│   └── segundo_recibo.txt
├── dia_13
│   ├── asistente_virtual.py
│   └── README.md
├── dia_14
│   ├── asistencia.py
│   ├── Empleados
│   │   ├── Cosmo Kramer.jpg
│   │   ├── Elaine Benes.jpg
│   │   ├── Federico Garay.jpg
│   │   ├── George Constanza.jpg
│   │   └── Jerry Seinfeld.jpg
│   ├── FotoA.jpg
│   ├── FotoB.jpg
│   ├── FotoC.jpg
│   ├── FotoD.jpg
│   ├── README.md
│   ├── reconocimiento_facial.py
│   └── registro.csv
├── dia_15
│   ├── cuaderno_machine_learning.py
│   ├── cuaderno_matplotlib.py
│   ├── cuaderno_numpy.py
│   ├── cuaderno_panda.py
│   ├── DataSet_Titanic.csv
│   ├── README.md
│   └── ventas-autos.csv
├── dia_16
│   ├── mi_web
│   │   ├── src
│   │   └── web
│   ├── README.md
│   └── web_Python_Total
│   ├── src
│   └── web
├── doc_curso
│   ├── 01_creador_de_nombres
│   │   ├── 001Print.pdf
│   │   ├── 002Strings.pdf
│   │   ├── 003Input.pdf
│   │   ├── 004Proyecto+del+Día+1.pdf
│   │   └── 005Cerveceria.py
│   ├── 02_calculador_de_comisiones
│   │   ├── 006Tipos+de+Datos.pdf
│   │   ├── 007Variables.pdf
│   │   ├── 008Los+Nombres+de+las+Variables.pdf
│   │   ├── 009Integers+y+Floats.pdf
│   │   ├── 010Conversiones+entre+Tipos+de+Datos.pdf
│   │   ├── 011Formatear+Cadenas.pdf
│   │   ├── 012Operadores+Matemáticos.pdf
│   │   ├── 013Redondeo.pdf
│   │   ├── 014Proyecto+del+Día+2.pdf
│   │   └── 015Comisiones.py
│   ├── 03_analizador_de_texto
│   │   ├── 016index(+).pdf
│   │   ├── 017Substrings.pdf
│   │   ├── 018Métodos+de+Strings.pdf
│   │   ├── 019Propiedades+de+Strings.pdf
│   │   ├── 020Listas.pdf
│   │   ├── 021Diccionarios.pdf
│   │   ├── 022Tuples.pdf
│   │   ├── 023Sets+-+Métodos.pdf
│   │   ├── 024Booleanos.pdf
│   │   ├── 025Proyecto+del+Día+3.pdf
│   │   └── 026Analizador_de_texto.py
│   ├── 04_adivinar_numero
│   │   ├── 027Operadores+de+Comparación.pdf
│   │   ├── 028Operadores+Lógicos.pdf
│   │   ├── 029Control+de+Flujo.pdf
│   │   ├── 030Loops+While.pdf
│   │   ├── 031Rango.pdf
│   │   ├── 032Enumerador.pdf
│   │   ├── 033Zip.pdf
│   │   ├── 034Min+&+Max.pdf
│   │   ├── 035Random.pdf
│   │   ├── 036Comprensión+de+Listas.pdf
│   │   ├── 037Match.pdf
│   │   ├── 038Proyecto+del+Día+4.pdf
│   │   └── 039Adivina_el_Numero.py
│   ├── 05_ahorcado
│   │   ├── 040Documentación.pdf
│   │   ├── 041Funciones.pdf
│   │   ├── 042Return.pdf
│   │   ├── 043Funciones+Dinámicas.pdf
│   │   ├── 044Interacción+entre+Funciones.pdf
│   │   ├── 045Argumentos+Indefinidos+args.pdf
│   │   ├── 046Argumentos+Indefinidos+kwargs.pdf
│   │   ├── 047Ejercicio_1.pdf
│   │   ├── 048Ejercicio_2.pdf
│   │   ├── 049Ejercicio_3.pdf
│   │   ├── 050Ejercicio_4.pdf
│   │   ├── 051Proyecto+del+Día+5.pdf
│   │   ├── 052Diagrama+Ahorcado.png
│   │   └── 053Juego_Ahorcado.py
│   ├── 06_recetario
│   │   ├── 054Abrir+y+Leer+Archivos.pdf
│   │   ├── 055Crear+y+Escribir+Archivos.pdf
│   │   ├── 056Directorios.pdf
│   │   ├── 057Pathlib.pdf
│   │   ├── 058Path.pdf
│   │   ├── 059Limpiar+la+Consola.pdf
│   │   ├── 060Archivos+y+Funciones.pdf
│   │   ├── 061Proyecto+del+Día+6.pdf
│   │   └── 062Mis_Recetas.py
│   ├── 07_cuenta_bancaria
│   │   ├── 063Clases.pdf
│   │   ├── 064Atributos.pdf
│   │   ├── 065Métodos.pdf
│   │   ├── 066Tipos+de+Métodos.pdf
│   │   ├── 067Herencia.pdf
│   │   ├── 068Herencia+Extendida.pdf
│   │   ├── 069Polimorfismo.pdf
│   │   ├── 070Métodos+Especiales.pdf
│   │   ├── 071Proyecto+del+Día+7.pdf
│   │   └── 072Cuenta_Bancaria.py
│   ├── 08_consola_de_turnos
│   │   ├── 073Instalar+Paquetes.pdf
│   │   ├── 074Módulos+y+Paquetes.pdf
│   │   ├── 075Manejo+de+Errores.pdf
│   │   ├── 076Pylint.pdf
│   │   ├── 077practica_pylint.py
│   │   ├── 078posible_solucion_pylint.py
│   │   ├── 079Unittest.pdf
│   │   ├── 080Decoradores.pdf
│   │   ├── 081Generadores.pdf
│   │   ├── 082Proyecto+del+Día+8.pdf
│   │   ├── 083numeros.py
│   │   └── 084principal.py
│   ├── 09_buscador_numeros_serie
│   │   ├── 085Módulo+Collections.pdf
│   │   ├── 086Módulo+Shutil+y+OS.pdf
│   │   ├── 087Módulo+Datetime.pdf
│   │   ├── 088Módulos+para+medir+el+tiempo.pdf
│   │   ├── 089Módulo+Math.pdf
│   │   ├── 090Expresiones+Regulares.pdf
│   │   ├── 091Comprimir+y+Descomprimir+Archivos.pdf
│   │   ├── 092Proyecto+del+Día+9.pdf
│   │   └── 093proyecto_9.py
│   ├── 10_invasion_espacial
│   │   ├── 094Distancia+entre+dos+puntos.pdf
│   │   └── 095programa_dia10
│   ├── 11_extractor_datos_web
│   │   ├── 096Extraer+Elementos+de+una+Clase.pdf
│   │   └── 097proyecto_11.py
│   ├── 12_gestor_restaurantes
│   │   ├── 098Lista_Precios.txt
│   │   └── 099mi_restaurante.py
│   ├── 13_asistente_voz
│   │   └── 100asistente_virtual.py
│   ├── 14_controlador_asistencia
│   │   └── 101asistencia.py
└── └── 16_web
   └── 102mi_web.zip
```