pyton
PARA TODOS
Raúl González Duque
Python
PARA TODOS
Raúl González Duque
Python para todos
por Raúl González Duque
Este libro se distribuye bajo una licencia Creative Commons Reconocimiento 2.5 España. Usted es libre de:
copiar, distribuir y comunicar públicamente la obra
hacer obras derivadas
Bajo las condiciones siguientes:
Reconocimiento. Debe reconocer y dar créditoal autor original
(Raúl González Duque)
La imágen de portada es una fotografía de una pitón verde de la especie
Morelia viridis cuyo autor es Ian Chien. La fotografía está licenciada bajo
Creative Commons Attribution ShareAlike 2.0
Contenido
Introducción
¿Qué es Python?
¿Por qué Python?
Instalación de Python
Herramientas básicas
6
6
7
8
9
Mi primer programa enPython
Tipos básicos
11
14
Colecciones
22
Control de flujo
27
Funciones
Orientación a Objetos
34
40
Revisitando Objetos
51
Números
Cadenas
Booleanos
Listas
Tuplas
Diccionarios
Sentencias condicionales
Bucles
Clases y objetos
Herencia
Herencia múltiple
Polimorfismo
Encapsulación
Clases de “nuevo-estilo”
Métodos especialesDiccionarios
Cadenas
Listas
15
20
20
22
24
25
27
30
40
43
44
45
46
48
48
51
52
52
Programación funcional
54
Excepciones
Módulos y Paquetes
62
69
Entrada/Salida Y Ficheros
73
Expresiones Regulares
81
Sockets
Interactuar con webs
Threads
88
92
98
Funciones de orden superior
Iteraciones de orden superior sobre listas
Funcioneslambda
Comprensión de listas
Generadores
Decoradores
Módulos
Paquetes
Entrada estándar
Parámetros de línea de comando
Salida estándar
Archivos
Patrones
Usando el módulo re
¿Qué son los procesos y los threads?
El GIL
Threads en Python
Sincronización
Datos globales independientes
Compartir información
54
56
57
58
59
60
69
72
73
74
74
78
81
85
9899
100
102
107
107
Introducción
¿Qué es Python?
Python es un lenguaje de programación creado por Guido van Rossum
a principios de los años 90 cuyo nombre está inspirado en el grupo de
cómicos ingleses “Monty Python”. Es un lenguaje similar a Perl, pero
con una sintaxis muy limpia y que favorece un código legible.
Se trata de un lenguaje interpretado o de script, con tipadodinámico,
fuertemente tipado, multiplataforma y orientado a objetos.
Lenguaje interpretado o de script
Un lenguaje interpretado o de script es aquel que se ejecuta utilizando
un programa intermedio llamado intérprete, en lugar de compilar el
código a lenguaje máquina que pueda comprender y ejecutar directamente una computadora (lenguajes compilados).
La ventaja de los lenguajes compilados es que suejecución es más
rápida. Sin embargo los lenguajes interpretados son más flexibles y más
portables.
Python tiene, no obstante, muchas de las características de los lenguajes compilados, por lo que se podría decir que es semi interpretado. En
Python, como en Java y muchos otros lenguajes, el código fuente se
traduce a un pseudo código máquina intermedio llamado bytecode la
primera vez que seejecuta, generando archivos .pyc o .pyo (bytecode
optimizado), que son los que se ejecutarán en sucesivas ocasiones.
Tipado dinámico
La característica de tipado dinámico se refiere a que no es necesario
declarar el tipo de dato que va a contener una determinada variable,
6
Introducción
sino que su tipo se determinará en tiempo de ejecución según el tipo
del valor al que se asigne,y el tipo de esta variable puede cambiar si se
le asigna un valor de otro tipo.
Fuertemente tipado
No se permite tratar a una variable como si fuera de un tipo distinto
al que tiene, es necesario convertir de forma explícita dicha variable
al nuevo tipo previamente. Por ejemplo, si tenemos una variable que
contiene un texto (variable de tipo cadena o string) no podremos tratarla como un...
Regístrate para leer el documento completo.