Está en la página 1de 22

Python

Python
De 1990 (Guido Van Rossum). Versiones: 2.7 y 3 (3.9)
Lenguaje de programación de alto nivel, interpretado,
no se compila el código fuente para ejecutarlo.
Entre los 5 lenguajes más usados por:
• Módulos (librerías) para distintas aplicaciones, tipos
de datos y funciones que contiene.
• Sencillez y rapidez para crear programas, con
menos líneas de código que C o Java.
• Es gratuito para propósitos empresariales.
• Python se encuentra en movimiento y pleno
desarrollo, existe una comunidad para ello.
• Las empresas que utilizan Python son Google,
Yahoo, la NASA, Walt Disney, …
Python
Python no es el lenguaje perfecto, no es bueno para:
• Programación de bajo nivel, como programación de
drivers y kernels. Es de muy alto nivel, no hay control
directo sobre memoria y otras tareas de bajo nivel
• Aplicaciones que requieren alta capacidad de computo
Python es ideal para:
• combinar varios componentes juntos, como lenguaje
sticky/pegamento (filosofía modular de UNIX)
• llevar a cabo prototipos de sistema
• la elaboración de aplicaciones cliente
• desarrollo web y de sistemas distribuidos
• el desarrollo de tareas científicas, en los que hay que
simular y prototipar rápidamente (IA)
Características
• Lenguaje de programación multiparadigma:
– Programación orientada a objetos.
– Programación imperativa.
– Programación funcional.
• Dinámicamente tipificado.
– Información menos explícita en el código.
– Verificaciones en tiempo de ejecución.
• Recolección de basura.
• En Python todo es un objeto. Incluso las clases, al
ser objetos, son instancias de una metaclase. Soporta
herencia múltiple y polimorfismo.
• El contenido de los bloques de código (funciones,
ciclos, clases, etc..) es declarado mediante espacios o
tabuladores (identación).
Identificadores
Para nombrar variables, funciones y módulos
– Deben empezar con un carácter no numérico y
contener letras, números y '_‘
– Python es case sensitive
Palabras reservadas: and elif global or assert else if is
pass break except import print class exec in raise while
continue finally return def for lambda try del from not
Variables y funciones delimitadas por __ corresponden
a símbolos implícitamente definidos:
__name__ nombre de función
__doc__ documentación sobre una función
__init__() constructor de una clase
Elementos del lenguaje
• Tipos de datos
Tipo Clase Notas Ejemplo

int Entero Número entero 30

float Decimal Coma flotante 3.1416

bool Booleano Valor verdadero o falso True, False

str Cadena Inmutable ‘Hola’

list Secuencia Mutable [3.0, ‘Hola’]

tuple Secuencia Inmutable (3.0,’Hola’)

set Conjunto Mutable, sin orden, sin Set([3.0,’Hola’])


duplicados
dict Secuencia Mutable, clave:valor {‘a’:3,’b’:’Hola’}
6
Cadenas de caracteres y comentarios
• Strings, delimitados por un par de (', " ,"""), son inmutables
• Dos string juntos sin delimitador se unen
>>> print ("Hi" "there“)
Hithere
– Códigos de escape con '\':
>>>print ('\n‘)
– Raw strings (sin procesar string)
>>> print (r'\n\\‘) # no se 'escapa' \n
- Python no tiene tipo char (son cadenas de longitud 1)
COMENTARIOS:
# DE UNA LÍNEA
‘’’ DE MÁS DE UNA LÍNEA ‘’’
“”” DE MÁS DE UNA LÍNEA “””
Tipos de datos simples
• Numéricos (integer, float, complex)
>>> x = 4
>>> int (x)
4
>>> float(x)
4.0
>>> z = complex (2, -3) z.real es 2
(2 -3j) z.imag es -3

Los enteros son ilimitados ocupan toda la memoria RAM


Los reales tienen 16 dígitos decimales.

Se puede expresar enteros en hexadecimal con el


prefijo 0x (o 0X); en octal con el prefijo 0o (o 0O); y en
binario con prefijo 0b (o 0B). Ejemplo: 0x1abc,
0X1ABC, 0o1776, 0b11000011.
Operadores aritméticos
Op Descripción Ejemplos
Tipos de datos simples
Booleans. Tipo de dato bool, valores: True y False
El entero 0, un valor vacío (como una cadena vacía,
etc) y None es False; todo lo demás es True.
Los Booleans se comportan como enteros en
operaciones aritméticas con 1 True y 0 False.
>>> 8 == 8 # Compara
True
>>> type(True) # tipo de dato
<class 'bool'>
>>> bool(0)
False
>>> bool(1)
True
>>> True + 3
4
El operador asignación (=)
Tipado dinámico: En Python no se declaran las
variables. La asignación inicial crea la variable y
enlaza el valor a la variable. En Python todo es un
objeto, las variables son punteros (contienen la
dirección de una posición de memoria).
>>> x = 8 # Crea la variable x asignando un valor
>>> type(x) # tipo de dato
<class ‘int’>
>> x = 'Hello' # Re-asigna un valor a x
>>> type(x) # tipo de dato
<class ‘str’> x
>>> del x # Elimina la variable x 5000 Hello
>>> x dirección posición

NameError: name 'x' is not defined


El operador asignación (=)
Conversión de tipo
Se usa: int( ), float( ), str( ), bool( ), etc.
>>> x = ‘123’
>>> type(x)
<class 'str'>
>>> x = float(x) # Convierte str a float, y asigna a x
>>> x
123.0
Asignación por pares y en cadena- La asignación es
asociativa por la derecha
>>> b, c, d = 123, 4.5, 'Hello’ # asigna 3 variables
>>> e = f = g = 123 # asignación en cadena
El operador asignación (=)
Operador Ejemplo Equivalente a
= x=5 x=5
+= x += 5 x=x+5
-= x -= 5 x = x -5
*= x *= 5 x=x*5
/= x /= 5 x=x/5
%= x %= 5 x=x%5
//= x //= 5 x = x // 5
**= x **= 5 x = x ** 5
&= x &= 5 x=x&5
|= x |= 5 x=x|5
^= x ^= 5 x=x^5
Importar módulos de funciones
LA LIBRERÍA (MÓDULO DE FUNCIONES
MATEMÁTICAS): math
SE PUEDE IMPORTAR CON:
>>> import math
Luego se tiene acceso a cualquier función con:
>>> y = math.sqrt(9)
TAMBIEN SE PUEDE IMPORTAR SOLO LAS FUNCIONES
QUE SE NECESITE USAR CON:
>>> from math import sin, pi, fabs
>>> k = fabs(sin(pi))
ENTRADA / SALIDA
Entrada: input(“mensaje”)
cad = input("Edad: ") # Mensaje de entrada
edad = int(cad) # Conversion a int
edad = int(input("Edad: ")) # compacto
peso = float(input(“Peso: ")) # compacto
Salida formateada print: print(“HOLA”)
print("Precio litro %d" %(precio)) # entero
# %10.2f real con dos decimales, longitud 10
print(" Precio por litro %10.2f" %(price))
print("%-10s %10.2f" %("Total: ", price))
Por defecto print termina con salto de línea, para evitarlo
se incluye end="char" como último argumento de print
print(10,end=",")
print(20)
10,20
FUNCIONES
Sintaxis:
def function_name(arg1, arg2, ...):
""“documentación de la función"""
cuerpo de la función
La documentación de la función puede obtenerse con
function_name.__doc__ (2 guiones bajos)
Dentro del cuerpo de la función se puede usar la
instrucción return para devolver un valor.
def cubo(x):
"""Retorna el cubo de un número dado"""
return x * x * x
Llamado: cubo(5)
MODULOS
Un módulo Python es un archivo que contiene código
Python, (instrucciones, variables, funciones y clases).
Debe guardarse con la extensión .py
El nombre del módulo es el nombre del archivo.
Si módulo comienza con una cadena de documentación
(triple comilla) se invoca con: <nombre_modulo>.__doc__
Instrucción import
Para usar un módulo en un programa se importa con import.
Se referencia los atributos del módulo con:
<nombre_modulo>.<nombre_atributo>
Se usa import as para asignar un nuevo nombre al módulo
from nombre_modulo import atributos, para llamar a los
atributos directamente sin el nombre_modulo
Se puede agrupar en el siguiente orden: Librería standard ,
Librerías de terceros, Librerías de aplicación local.
EJEMPLO
1. Ingresar a IDLE
Options-> Configure IDLE-> General-> Open Shell
Window (Cerrar y volver a ingresar a IDLE)
1. Abrir un editor nuevo y escribir el programa:
“”” Ejemplos de funciones
“””
from math import pi
def cilindro():
“”” Cálculo del área y volumen
de un cilindro ”””
r = float(input(‘radio= ‘))
h = float(input(‘altura= ‘))
area = 2*pi*r*(r+h)
vol = pi*r*r*h
print(‘área=‘,area,’ volumen=‘,vol)
3. Guardar como cil.py
EJEMPLO
4. Importar
import cil
5. Llamar (ventana de comandos):
cil.cilindro()
6. Ver la documentación del módulo:
cil.__doc__
Ver la documentación de la función:
cil.cilindro.__doc__
*****************************
4. Importar (otra opción)
from cil import cilindro
5. Llamado:
cilindro()
EJEMPLO
6. Ver la documentación de la función:
cilindro.__doc__
(No se puede tener acceso a la documentación del
módulo)
**********
4. Ejecutar desde el editor (otra opción):
Run -> Run Module o
5. Llamado:
cilindro()
6. Ver la documentación de la función:
cilindro.__doc__
(No se puede tener acceso a la documentación del
módulo)
TAREA 1 (PYTHON)
1. DEFINIR UNA FUNCIÓN PARA CALCULAR EL
ÁREA DE UN TRIÁNGULO:
LADOS: a, b, c. SEMIPERÍMETRO s=(a+b+c)/2
ÁREA: area=(s*(s-a)*(s-b)*(s-c))^1/2
2. DEFINIR UNA FUNCIÓN PARA CALCULAR EL ÁREA
Y EL VOLÚMEN DE UN PARALELEPÍPEDO:
LADOS: x, y, z. ÁREA: area=2*(x*y+x*z+y*z)
VOLÚMEN: vol=x*y*z

En Word o pdf incluir el código y captura de


pantalla de la ejecución.
GRACIAS

También podría gustarte