Python 3

Es un lenguaje de programación   interpretado  cuya filosofía hace hincapié en una sintaxis que favorezca un código legible.

Se trata de un lenguaje de programación multiparadigma , ya que soporta orientación a objetos , programación imperativa  y, en menor medida, programación funcional .

¿Qué es Python?

Python fue creado a finales de los ochenta​ por Guido Van Rossum.

El nombre del lenguaje proviene de la afición de su creador por los humoristas británicos Monty Python.

Cuenta con el Zen de Python que son 20 principios de software que influyen en el diseño del lenguaje.

Los PEP son un documento que proporciona información, describe o propone una característica para el lenguaje.

Una vista rápida

  • Python permite dividir el programa en módulos reutilizables.
  • Viene con una gran colección de módulos estándar.
  • También hay módulos incluidos que proporcionan E/S de ficheros, llamadas al sistema, Sockets y hasta interfaces a GUI como Tk, GTK, Qt entre otros.
  • No es necesario compilar.
  • El intérprete se puede utilizar de modo interactivo, lo que facilita experimentar con características del lenguaje, escribir programas desechables o probar funciones durante el desarrollo del programa.​

Características

  • Desarrollo Web.
  • Ciencias y números.
  • Educación.
  • Aplicaciones de escritorio.
  • Desarrollo de software.
  • Aplicaciones de negocio.

 

En la pagina oficial de Python podemos obtener mayor información sobre sus campos de aplicación.

https://www.python.org/about/apps/​

Campos de aplicación

Python es un lenguaje multi plataforma y en su sitio web oficial podemos encontrar los diferentes instaladores para el sistema que sea de nuestra preferencia.

https://www.python.org/downloads/

 

En algunos sistemas Linux ya viene instalado python3 de manera nativa.

 

Instalación

El interprete

source code: código escrito en el lenguaje python.

 

interpreter: procesador que ejecuta instrucciones de alto nivel.

 

compiler: compilador que transforma el codigo de python en byte code.

 

virtual machine: Ambiente donde se ejecuta el byte code y es traducido al lenguaje maquina.​

El interprete

Para activar el modo interactivo del interprete solo debemos abrir nuestra terminal y escribir python3

El interprete

También podemos instalar otros interpretes interactivos como:

  • ipython
  • bpython

El interprete

Nivel
1

Estructura del lenguaje

Los tipos de dato estándar de Python son los siguientes.

Tipos de datos

Adicionalmente Python tiene otros 2 tipos de dato.

Tipos de datos

Debemos tener en cuenta que en Python todos los tipos de dato son un objeto.

Al asignarlos a una variable podremos hacer uso de sus distintos métodos y atributos.

En Python para ingresar datos (entrada) y mostrarlos (salida) en pantalla podemos utilizar input() y print().

E/S estándar

Una variable es un objeto que esta almacenado en memoria.

Variables

En el ejemplo podemos ver la variable saludo la cual es de tipo STR y tiene una serie de métodos disponibles correspondientes a un objeto de su tipo.

Variables

Asignación simple

Asignación multiple

En Python las constantes son escritas en mayúscula y se utiliza underScore ( _ ) para separar las palabras.

Constantes

Nuestras constantes no serán inmutables, pero por convención se declaran en mayúscula para tener una mejor legibilidad del código.

Python nos brinda una serie de constantes integradas que podemos utilizar en el desarrollo de nuestra aplicación.

Constantes

Para realizar la asignación de una variable disponemos de 8 operadores que nos facilitaran realizar algunos cálculos matemáticos.

Operadores de asignación

Podemos realizar cálculos matemáticos utilizando los siguientes operadores.

Operadores aritméticos

El orden de precedencia de ejecución de los operadores aritméticos es:

  1. Exponente: **
  2. Negación: -
  3. Multiplicación, División, División entera, Módulo: *, /, //, %
  4. Suma, Resta: +, -

Los valores booleanos son resultado del uso de un operador relacional.

Operadores relacionales

En Python podemos formatear cadenas usando el % o el método format().

Formateo de cadenas

IF es una condicional que se utiliza para la toma de decisiones, significa que es ejecutada si se cumple la expresión.

ELSE significa de lo contrario y no tiene una expresión de evaluación.

Bloques de Código

ELIF es una condicional que nos permite encadenar mas expresiones de evaluación.

Bloques de Código

El operador ternario en Python es conocido como expresión condicional y puede ser trabajado de la siguiente manera.

Bloques de Código

Esto nos permite hacer una asignación basada en una evaluación.

Expresiones condicionales

Estas expresiones nos permitirán enriquecer nuestros bloques condicionales de código.

Estos operadores nos devolverán un resultado booleano el cual podemos utilizar dentro de nuestros bloques condicionales de código.

Operadores lógicos

También conocidos como bucles nos permiten ejecutar múltiples veces una porción de código.

Estructuras de control

Blucle While

El código se ejecutara mientras se cumpla la condición (que el valor sea menor a 10)

Dentro de las estructuras de control podemos utilizar sentencias utilitarias como continue y break.

Estructuras de control

La sentencia continue le indica al bucle que pase a la siguiente iteración, el código que este después de continue ya no sera ejecutado.

Estructuras de control

La sentencia break le indica al bucle que culmine la iteración actual y que las posteriores ya no se deben ejecutar.

Estructuras de control

El bucle FOR itera sobre los items de cualquier tipo de secuencia (una lista, una cadena de caracteres, etc)

Estructuras de control

Al igual que continue y break existe otra sentencia que puede ser utilizada en todos los bucles y esta es ELSE.

Funciones

Es un bloque de código que recibe 0 o más argumentos de entrada.

Esto nos permite segmentar un programa y tener código reutilizable.

Funciones

Una función puede recibir de manera dinámica argumentos (args) y/o también  pares de clave y valor (kwargs)

Nivel
2

Paradigma de programación

Programación estructurada

Este paradigma se basa en utilizar únicamente funciones, bucles y condicionales.

Ademas las sentencias son ejecutadas en el orden escrito.

Prog. Orientada a Objetos

Este paradigma se basa en utilizar clases, propiedades y métodos. Como resultado de una clase instanciada obtenemos un objeto.

Prog. Orientada a Objetos

Algunas de las características de la programación orientada a objetos (POO) son: herencia, polimorfismo, composición.

La herencia le da la capacidad a una clase de heredar atributos o métodos de otra clase, en este caso Hombre hereda el método hablar().

Prog. Orientada a Objetos

El polimorfismo nos permite reescribir el comportamiento de un método heredado.

Hay que tener en cuenta que no existe polimorfismo  si no hay herencia.

Prog. Orientada a Objetos

A un objeto compuesto por otro se le llama composición .

Prog. Orientada a Objetos

La encapsulación nos permite limitar el nivel de acceso de nuestros objetos.

Programación funcional

Este paradigma trabaja principalmente con funciones y datos inmutables.

Las funciones de orden superior son aquellas que pueden tomar como parámetro a otra función.

Nivel
3

Manejo de errores

Programación funcional

Este paradigma trabaja principalmente con funciones y datos inmutables.

Las funciones de orden superior son aquellas que pueden tomar como parámetro a otra función.

Con Python podemos ejecutar procesos de manera sincrona y asincrona (a partir de la versión 3.5).

Procesos asíncronos

La forma de ejecutar procesos Sincronos es muy sencilla y ya conocida.

Procesos asíncronos

Para la ejecución de procesos Asincronos debemos utilizar un Bucle de eventos.

Procesos asíncronos

Python

By Oscar Luis Sánchez Jara

Python

Introducción a Python

  • 1,179