Python basics
danygodinez13Apuntes28 de Diciembre de 2020
6.460 Palabras (26 Páginas)139 Visitas
Indice general
Prefacio III
1. ¿Por qu´e deber´ıa aprender a escribir programas? 1
1.1. Creatividad y motivaci ´on . . . . . . . . . . . . . . . . . . . . . 2
1.2. Arquitectura hardware del PC . . . . . . . . . . . . . . . . . . . 3
1.3. Comprendiendo la programaci ´on . . . . . . . . . . . . . . . . . 5
1.4. Palabras y frases . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.5. Conversando con Python . . . . . . . . . . . . . . . . . . . . . 6
1.6. Terminolog´ıa: int´erprete y compilador . . . . . . . . . . . . . . 9
1.7. Escribir un programa . . . . . . . . . . . . . . . . . . . . . . . 11
1.8. ¿Qu´e es un programa? . . . . . . . . . . . . . . . . . . . . . . . 11
1.9. Los bloques de construcci ´on de los programas . . . . . . . . . . 13
1.10. ¿Qu´e es posible que vaya mal? . . . . . . . . . . . . . . . . . . 14
1.11. El viaje de aprendizaje . . . . . . . . . . . . . . . . . . . . . . 15
1.12. Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.13. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2. Variables, expresiones y sentencias 19
2.1. Valores y tipos . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2. Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3. Nombres de variables y palabras claves . . . . . . . . . . . . . . 21
2.4. Sentencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
VIII ´Indice general
2.5. Operadores y operandos . . . . . . . . . . . . . . . . . . . . . . 22
2.6. Expresiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.7. Orden de las operaciones . . . . . . . . . . . . . . . . . . . . . 23
2.8. Operador m´odulo . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.9. Operaciones con cadenas . . . . . . . . . . . . . . . . . . . . . 25
2.10. Petici ´on de informaci ´on al usuario . . . . . . . . . . . . . . . . 25
2.11. Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.12. Elecci ´on de nombres de variables mnem´onicos . . . . . . . . . 27
2.13. Depuraci ´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.14. Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.15. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3. Ejecuci ´on condicional 33
3.1. Expresiones booleanas . . . . . . . . . . . . . . . . . . . . . . 33
3.2. Operadores l ´ogicos . . . . . . . . . . . . . . . . . . . . . . . . 34
3.3. Ejecuci ´on condicional . . . . . . . . . . . . . . . . . . . . . . . 34
3.4. Ejecuci ´on alternativa . . . . . . . . . . . . . . . . . . . . . . . 35
3.5. Condicionales encadenados . . . . . . . . . . . . . . . . . . . . 36
3.6. Condicionales anidados . . . . . . . . . . . . . . . . . . . . . . 37
3.7. Captura de excepciones usando try y except . . . . . . . . . . . 38
3.8. Evaluaci ´on en cortocircuito de expresiones l ´ogicas . . . . . . . 40
3.9. Depuraci ´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.10. Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.11. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4. Funciones 45
4.1. Llamadas a funciones . . . . . . . . . . . . . . . . . . . . . . . 45
4.2. Funciones internas . . . . . . . . . . . . . . . . . . . . . . . . 45
4.3. Funciones de conversi ´on de tipos . . . . . . . . . . . . . . . . . 46
4.4. N´umeros aleatorios . . . . . . . . . . . . . . . . . . . . . . . . 47
´I
ndice general IX
4.5. Funciones matem´aticas . . . . . . . . . . . . . . . . . . . . . . 48
4.6. A˜nadiendo funciones nuevas . . . . . . . . . . . . . . . . . . . 49
4.7. Definici ´on y usos . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.8. Flujo de ejecuci ´on . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.9. Par´ametros y argumentos . . . . . . . . . . . . . . . . . . . . . 52
4.10. Funciones productivas y funciones est´eriles . . . . . . . . . . . 53
4.11. ¿Por qu´e funciones? . . . . . . . . . . . . . . . . . . . . . . . . 54
4.12. Depuraci ´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.13. Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.14. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5. Iteraci ´on 59
5.1. Actualizaci ´on de variables . . . . . . . . . . . . . . . . . . . . 59
5.2. La sentencia while . . . . . . . . . . . . . . . . . . . . . . . . 59
5.3. Bucles infinitos . . . . . . . . . . . . . . . . . . . . . . . . . . 60
5.4. “Bucles infinitos” y break . . . . . . . . . . . . . . . . . . . . 61
5.5. Finalizar iteraciones con continue . . . . . . . . . . . . . . . . 62
5.6. Bucles definidos usando for . . . . . . . . . . . . . . . . . . . 62
5.7. Dise˜nos de bucles . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.8. Depuraci ´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.9. Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.10. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
6. Cadenas 69
6.1. Una cadena es una secuencia . . . . . . . . . . . . . . . . . . . 69
6.2. Obtener la longitud de una cadena mediante len . . . . . . . . . 70
6.3. Recorrido a trav´es de una cadena con un bucle . . . . . . . . . . 70
6.4. Rebanado de cadenas (slicing) . . . . . . . . . . . . . . . . . 71
6.5. Las cadenas son inmutables . . . . . . . . . . . . . . . . . . . . 72
6.6. Bucles y contadores . . . . . . . . . . . . . . . . . . . . . . . . 72
X ´Indice general
6.7. El operador in . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
6.8. Comparaci ´on de cadenas . . . . . . . . . . . . . . . . . . . . . 73
6.9. M´etodos de cadenas . . . . . . . . . . . . . . . . . . . . . . . 73
6.10. An´alisis de cadenas . . . . . . . . . . . . . . . . . . . . . . . . 76
6.11. Operador de formato . . . . . . . . . . . . . . . . . . . . . . . 76
6.12. Depuraci ´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.13. Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
6.14. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
7. Ficheros 81
7.1. Persistencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
7.2. Apertura de ficheros . . . . . . . . . . . . . . . . . . . . . . . . 82
7.3. Ficheros de texto y l´ıneas . . . . . . . . . . . . . . . . . . . . . 83
7.4. Lectura de ficheros . . . . . . . . . . . . . . . . . . . . . . . . 84
7.5. B´usqueda dentro de un fichero . . . . . . . . . . . . . . . . . . 85
7.6. Permitiendo al usuario elegir el nombre del fichero . . . . . . . 87
7.7. Uso de try, except, y open . . . . . . . . . . . . . . . . . . 88
7.8. Escritura en ficheros . . . . . . . . . . . . . . . . . . . . . . . . 89
7.9. Depuraci ´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
7.10. Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
7.11. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
8. Listas 93
8.1. Una lista es una secuencia . . . . . . . . . . . . . . . . . . . . . 93
8.2. Las listas son mutables . . . . . . . . . . . . . . . . . . . . . . 93
8.3. Recorrer una lista . . . . . . . . . . . . . . . . . . . . . . . . . 94
8.4. Operaciones con listas . . . . . . . . . . . . . . . . . . . . . . . 95
8.5. Rebanado de listas . . . . . . . . . . . . . . . . . . . . . . . . . 95
8.6. M´etodos de listas . . . . . . . . . . . . . . . . . . . . . . . . . 96
8.7. Borrado de elementos . . . . . . . . . . . . . . . . . . . . . . . 97
´I
ndice general XI
8.8. Listas y funciones . . . . . . . . . . . . . . . . . . . . . . . . . 97
8.9. Listas y cadenas . . . . . . . . . . . . . . . . . . . . . . . . . . 98
8.10. An´alisis de l´ıneas . . . . . . . . . . . . . . . . . . . . . . . . . 99
8.11. Objetos y valores . . . . . . . . . . . . . . . . . . . . . . . . . 100
8.12. Alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
8.13. Listas como argumentos . . . . . . . . . . . . . . . . . . . . . 102
8.14. Depuraci ´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
8.15. Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
8.16. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
9. Diccionarios 109
9.1. Diccionario como conjunto de contadores . . . . . . . . . . . . 111
9.2. Diccionarios y archivos . . . . . . . . . . . . . . . . . . . . . . 112
9.3. Bucles y diccionarios . . . . . . . . . . . . . . . . . . . . . . . 113
9.4. Procesado avanzado de texto . . . . . . . . . . . . . . . . . . . 115
9.5. Depuraci ´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
9.6. Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
9.7. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
10. Tuplas 121
10.1. Las tuplas son inmutables . . . . . . . . . . . . . . . . . . . . . 121
...