Manual de Python - Aprende con Alf

嚜燎eferencias

Alfredo S芍nchez Alberca

Febrero 2020

Referencias

?ndice general

?ndice general

1 Introducci車n a Python

1.1 ?Qu谷 es Python? . . . . . . . . . . . . . . .

1.2 Principales ventajas de Python . . . . . . .

1.3 Tipos de ejecuci車n . . . . . . . . . . . . . .

1.3.1 Interpretado en la consola de Python

1.3.2 Interpretado en fichero . . . . . . .

1.3.3 Compilado a bytecode . . . . . . . .

1.3.4 Compilado a ejecutable del sistema

.

.

.

.

.

.

.

8

8

8

8

8

8

9

9

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

9

9

10

10

10

11

11

12

12

13

13

14

14

15

16

16

16

17

17

18

18

3 Estructuras de control

3.1 Condicionales (if) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.2 Bucles condicionales (while) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.3 Bucles iterativos (for) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

19

19

20

20

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

2 Tipos de datos simples

2.1 Tipos de datos primitivos simples . . . . . . . . . . .

2.2 Tipos de datos primitivos compuestos (contenedores)

2.3 Clase de un dato (type()) . . . . . . . . . . . . . .

2.4 N迆meros (clases int y float) . . . . . . . . . . . .

2.4.1 Operadores aritm谷ticos . . . . . . . . . . . .

2.4.2 Operadores l車gicos con n迆meros . . . . . . .

2.5 Cadenas (clase str) . . . . . . . . . . . . . . . . . .

2.5.1 Acceso a los elementos de una cadena . . . .

2.5.2 Subcadenas . . . . . . . . . . . . . . . . . .

2.5.3 Operaciones con cadenas . . . . . . . . . . .

2.5.4 Operaciones de comparaci車n de cadenas . .

2.5.5 Funciones de cadenas . . . . . . . . . . . . .

2.5.6 Cadenas formateadas (format()) . . . . . .

2.6 Datos l車gicos o booleanos (clase bool) . . . . . . . .

2.6.1 Operaciones con valores l車gicos . . . . . . .

2.6.2 Tabla de verdad . . . . . . . . . . . . . . . .

2.7 Conversi車n de datos primitivos simples . . . . . . . .

2.8 Variables . . . . . . . . . . . . . . . . . . . . . . . .

2.9 Entrada por terminal (input()) . . . . . . . . . . .

2.9.1 Salida por terminal (print()) . . . . . . . .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

2

Referencias

4 Tipos de datos estructurados

4.1 Listas . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.1.1 Creaci車n de listas mediante la funci車n list() .

4.1.2 Acceso a los elementos de una lista . . . . . . . .

4.1.3 Sublistas . . . . . . . . . . . . . . . . . . . . . .

4.1.4 Operaciones que no modifican una lista . . . . .

4.1.5 Operaciones que modifican una lista . . . . . . .

4.1.6 Copia de listas . . . . . . . . . . . . . . . . . . .

4.2 Tuplas . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.2.1 Creaci車n de tuplas mediante la funci車n tuple()

4.2.2 Operaciones con tuplas . . . . . . . . . . . . . .

4.3 Diccionarios . . . . . . . . . . . . . . . . . . . . . . . . .

4.3.1 Acceso a los elementos de un diccionario . . . .

4.3.2 Operaciones que no modifican un diccionario . .

4.3.3 Operaciones que modifican un diccionario . . . .

4.3.4 Copia de diccionarios . . . . . . . . . . . . . . .

?ndice general

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

5 Funciones

5.1 Funciones (def) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.1.1 Par芍metros y argumentos de una funci車n . . . . . . . . . . . . . . . . . .

5.1.2 Paso de argumentos a una funci車n . . . . . . . . . . . . . . . . . . . . . .

5.1.3 Retorno de una funci車n . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.2 Argumentos por defecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.3 Pasar un n迆mero indeterminado de argumentos . . . . . . . . . . . . . . . . . . .

5.4 ?mbito de los par芍metros y variables de una funci車n . . . . . . . . . . . . . . . .

5.5 ?mbito de los par芍metros y variables de una funci車n . . . . . . . . . . . . . . . .

5.6 Paso de argumentos por referencia . . . . . . . . . . . . . . . . . . . . . . . . . .

5.7 Documentaci車n de funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.8 Funciones recursivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.8.1 Funciones recursivas m迆ltiples . . . . . . . . . . . . . . . . . . . . . . . .

5.8.2 Los riesgos de la recursi車n . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.9 Programaci車n funcional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.9.1 Funciones an車nimas (lambda) . . . . . . . . . . . . . . . . . . . . . . . .

5.9.2 Aplicar una funci車n a todos los elementos de una colecci車n iterable (map)

5.9.3 Filtrar los elementos de una colecci車n iterable (filter) . . . . . . . . . . . .

5.9.4 Combinar los elementos de varias colecciones iterables (zip) . . . . . . .

5.9.5 Operar todos los elementos de una colecci車n iterable (reduce) . . . . . .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

21

21

22

22

23

23

24

25

25

26

26

27

27

28

28

29

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

30

30

30

31

31

32

32

32

33

33

34

34

35

35

35

36

36

37

37

37

3

Referencias

?ndice general

5.10 Comprensi車n de colecciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.10.1 Comprensi車n de listas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.10.2 Comprensi車n de diccionarios . . . . . . . . . . . . . . . . . . . . . . . . . . .

6 Ficheros

6.1 Ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.1.1 Creaci車n y escritura de ficheros . . . . . . . . . .

6.1.2 A?adir datos a un fichero . . . . . . . . . . . . .

6.1.3 Leer datos de un fichero . . . . . . . . . . . . . .

6.1.4 Leer datos de un fichero . . . . . . . . . . . . . .

6.1.5 Cerrar un fichero . . . . . . . . . . . . . . . . . .

6.1.6 Renombrado y borrado de un fichero . . . . . . .

6.1.7 Renombrado y borrado de un fichero o directorio

6.1.8 Creaci車n, cambio y eliminaci車n de directorios . .

6.1.9 Leer un fichero de internet . . . . . . . . . . . .

7 Excepciones

7.1 Control de errores mediante excepciones

7.1.1 Tipos de excepciones . . . . . .

7.1.2 Control de excepciones . . . . .

7.1.3 Control de excepciones . . . . .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

8 Programaci車n Orientada a Objetos

8.1 Objetos . . . . . . . . . . . . . . . . . . . . . . . . .

8.1.1 Acceso a los atributos y m谷todos de un objeto

8.2 Clases (class) . . . . . . . . . . . . . . . . . . . . .

8.2.1 Clases primitivas . . . . . . . . . . . . . . . .

8.2.2 Instanciaci車n de clases . . . . . . . . . . . .

8.2.3 Definici車n de m谷todos . . . . . . . . . . . . .

8.2.4 El m谷todo __init__ . . . . . . . . . . . . .

8.2.5 Atributos de instancia vs atributos de clase . .

8.2.6 El m谷todo __str__ . . . . . . . . . . . . . .

8.3 Herencia . . . . . . . . . . . . . . . . . . . . . . . .

8.3.1 Jerarqu赤a de clases . . . . . . . . . . . . . . .

8.3.2 Sobrecarga y polimorfismo . . . . . . . . . .

8.4 Principios de la programaci車n orientada a objetos . .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

38

38

38

.

.

.

.

.

.

.

.

.

.

39

39

39

39

40

40

40

41

41

41

42

.

.

.

.

42

42

42

43

43

.

.

.

.

.

.

.

.

.

.

.

.

.

44

44

44

45

46

46

47

47

48

48

49

50

50

51

4

Referencias

?ndice general

9 M車dulos

9.1 M車dulos . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9.1.1 Importaci車n completa de m車dulos (import) . . .

9.1.2 Importaci車n parcial de m車dulos (from import) .

9.1.3 M車dulos de la librer赤a est芍ndar m芍s importantes .

9.1.4 Otras librer赤as imprescindibles . . . . . . . . . . .

10 La librer赤a datetime

10.1 Los tipos de datos date, time y datetime . . . . . . .

10.2 Acceso a los componentes de una fecha . . . . . . . . .

10.3 Conversi車n de fechas en cadenas con diferentes formatos

10.4 Conversi車n de cadenas en fechas . . . . . . . . . . . . .

10.5 Aritm谷tica de fechas . . . . . . . . . . . . . . . . . . . .

11 La librer赤a Numpy

11.1 La clase de objetos array . . . . . . . . .

11.2 Creaci車n de arrays . . . . . . . . . . . . .

11.3 Atributos de un array . . . . . . . . . . . .

11.4 Acceso a los elementos de un array . . . .

11.5 Filtrado de elementos de un array . . . . .

11.6 Operaciones matem芍ticas con arrays . . .

11.7 Operaciones matem芍ticas a nivel de array

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

12 La librer赤a Pandas

12.1 Tipos de datos de Pandas . . . . . . . . . . . .

12.2 La clase de objetos Series . . . . . . . . . . . .

12.3 Creaci車n de una serie a partir de una lista . . . .

12.4 Creaci車n de una serie a partir de un diccionario

12.5 Atributos de una serie . . . . . . . . . . . . . .

12.6 Acceso a los elementos de una serie . . . . . . .

12.6.1 Acceso por posici車n . . . . . . . . . . .

12.6.2 Acceso por 赤ndice . . . . . . . . . . . . .

12.7 Resumen descriptivo de una serie . . . . . . . .

12.8 Aplicar operaciones a una serie . . . . . . . . .

12.9 Aplicar funciones a una serie . . . . . . . . . . .

12.10Filtrado de una serie . . . . . . . . . . . . . . .

12.11Ordenar una serie . . . . . . . . . . . . . . . .

12.12Eliminar los dados desconocidos en una serie .

12.13La clase de objetos DataFrame . . . . . . . . . .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

52

52

52

53

53

54

.

.

.

.

.

54

54

55

56

56

57

.

.

.

.

.

.

.

57

57

57

59

59

60

60

61

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

61

61

62

62

62

63

63

63

64

64

65

66

67

67

68

68

5

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download