0% encontró este documento útil (0 votos)
68 vistas17 páginas

1.1. Introduccion A Python

Python es un lenguaje de programación de alto nivel, multiplataforma e interpretado cuya filosofía principal es la legibilidad del código. Se caracteriza por su código abierto, comunidad de desarrolladores, tipado dinámico y gran cantidad de bibliotecas. Existen dos versiones principales, Python 2 y Python 3, recomendándose el uso de Python 3. Se usa ampliamente en ciencia de datos, aprendizaje automático, desarrollo web y en empresas como Google, Netflix e Instagram.

Cargado por

irais.research
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
68 vistas17 páginas

1.1. Introduccion A Python

Python es un lenguaje de programación de alto nivel, multiplataforma e interpretado cuya filosofía principal es la legibilidad del código. Se caracteriza por su código abierto, comunidad de desarrolladores, tipado dinámico y gran cantidad de bibliotecas. Existen dos versiones principales, Python 2 y Python 3, recomendándose el uso de Python 3. Se usa ampliamente en ciencia de datos, aprendizaje automático, desarrollo web y en empresas como Google, Netflix e Instagram.

Cargado por

irais.research
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 17

1.

1 Introducción a Python
Python para la arquitectura y la ingeniería

Alberto Díaz, Edgar Talavera y Guillermo Iglesias


Curso 2022/2023
E.T.S.I. Sistemas Informáticos
License CC BY-NC-SA 4.0
Introducción
Python es un lenguaje extremadamente popular en la actualidad:
El lenguaje más buscado en Stack Overflow
El lenguaje más popular en la actualidad1 (superando a C y a Java)
Su comunidad es muy grande y no deja de crecer

Desarrollado por Guido van Rossum en la década de 1990:

Se construyó sobre el principio de maximizar la legibilidad


Licenciado bajo la Python Software Foundation (PSF)2
1
Según el índice Tiobe de 2022 (https://www.tiobe.com/tiobe-index/)
2
https://docs.python.org/3/license.htm

2 / 17
Pero ¿qué es Python?
Es uno de los lenguajes de programación de más rápido crecimiento debido,
entre otros:
El gran apoyo de los miembros de la comunidad a lo largo de los años
Su naturaleza libre y colaborativa
Su ingente cantidad de bibliotecas para prácticamente cualquier dominio

Toma su nombre de los Monty Python, grupo británico de humoristas


Concretamente por la serie Monty Python's Flying Circus3

3 https://en.wikipedia.org/wiki/Monty_Python's_Flying_Circus

3 / 17
"It's a high-level programming language, and its
core design philosophy is all about code readability
and a syntax which allows programmers to express
concepts in a few lines of code."

- Guido van Rossum. What is Python? -


Características del lenguaje
Código abierto y libre (FOSS), con una fuerte comunidad de desarrolladores
Denominados pythonistas y pythoneers
Con un gigantesco repositorio de bibliotecas

El lenguaje no se compila, sino que es interpretado ...


Y multiplataforma : El mismo programa funciona en cualquier máquina
Y multiparadigma : Imperativo, orientado a objetos y funcional
Y fuertemente tipado : Pero de tipado dinámico , lo que suele confundir

Se integra fácilmente con el sistema y otros lenguajes


4
PyPi, disponible en https://pypi.org/ y fuente por defecto de la herramienta pip (más adelante)
5 / 17
He oído que hay dos versiones ...
Sí, actualmente coexisten dos versiones de Python: 2 y 3
Python 2 salió en el año 2000
Python 3 salió en 2008 y supuso un gran cambio en el lenguaje

El verdadero problema es que Python 3 rompió la retrocompatibilidad


Existe mucho software desarrollado para la versión 2
Se resiste a desaparecer, aunque terminó su soporte en 2015 2020
Python 2 se resiste a desaparecer (aún hay mucho software desarrollado)

¿Qué versión deberíamos usar para desarrollar?

Python 3 siempre que se pueda (tratando de mantener retrocompatibilidad)


6 / 17
¿Dónde se usa Python?
Python es muy versátil, se utiliza en prácticamente cualquier ámbito:
Ciencia de datos, aprendizaje automático, visualización de datos, educación,
desarrollo de sitios web, scripts de configuración en sistemas operativos, ...

Algunas de las empresas que lo usan abiertamente son:


Google5: en muchas de sus APIs, proyectos de IA y robótica
Netflix6: Aproximadamente el 80% de sus servicios están escritos en Python
Instagram7: Entre otros usan Django (muy modificado)
5 Una de las frases de los fundadores de Google en sus inicios fue Python where we can, C++ where we must
6
Más información sobre cómo Instagram usa Python en https://engineering.atspotify.com/2013/03/how-we-use-
python-at-spotify/
7 Más información sobre cómo Instagram usa Python en https://instagram-engineering.com/web-service-efficiency-at-

instagram-with-python-4976d078e366
7 / 17
Intérpretes del lenguaje
Existen muchos intérpretes diferentes, entre ellos:

cpython

Intérprete oficial, y por tanto implementación de referencia; escrito en C

jython : Intérprete para la jvm

Desarrollado en Java, no funciona con extensiones de C


Las versiones van casi a la par con las del intérprete oficial

La lista es interminable:
IronPython (.NET), PyPy (Python), Brython (Javascript), ...
8 / 17
¿Y dónde desarrollar?
Desarrollar desde la línea de comandos no tiene mucho sentido
Aunque es útil tenerlo a mano para probar cosas

Una aplicación de Python está compuesta de uno o más ficheros .py

Esto es, ficheros con sentencias de Python dentro


La única restricción es que los ficheros sean de texto plano

Lo suyo es usar algún editor de código o IDE


A veces la división entre ambos es un poco difusa

9 / 17
Entornos de Desarrollo Integrados (IDEs)
Los IDE ofrecen muchas ventajas:
Permiten la ejecución automática de programas
Incluyen analizadores estáticos de código
También incluso analizadores de estilo
Incluso ofrecen la posibilidad de realizar refactorizaciones automáticas
...

Algunos IDE específicos para Python


Eclipse y pydev
PyCharm
10 / 17
Sintaxis de Python y directrices de formato
Python es CaSe SeNsItIvE

Algunos de los principales tipos de datos disponibles en Python son:


int : Números enteros como 1 , -10 o 10^(10^10)
float : Número decimales, como 3.1416 , o 2.4142
bool : Valores lógicos que pueden tomar como valor True y False
Otros tipos como listas, tuplas, cadenas de texto o diccionarios

No existen llaves para delimitar bloques


Todo el código debe estar en el mismo nivel de indentación
La indentación se realiza con espacios o tabuladores (¡ojo con no mezclarlos!)
11 / 17
Unas palabras sobre indentación
Los compiladores/intérpretes no se preocupan de la indentación:
Sí se preocupan de los bloques, por eso suelen tener llaves
Los humanos tendemos agrupar las cosas relacionadas, por eso indentamos

Python fuerza la indentación :


No tiene llaves ; todo bloque relacionado está indentado a la misma altura
Se indenta con blancos, esto es, espacios o tabuladores (¡no mezclar!)

12 / 17
¿Por qué forzar a indentar es un buen diseño?

Fragmento en C Fragmento en python

if (a == b) { if a == b:
if (c == d) if c == d:
uno(); uno()
dos(); dos()
} else else:
tres(); tres()

El código en C es problemático ya que bloques e indentación no coinciden


En el de python sin embargo, coinciden
Forzar la indentación como parte del código obliga a hacerlo más legible
13 / 17
Importando bibliotecas
Para usar clases o funciones del sistema o de terceros usamos import :
import xxxxx
import xxxxx.yyyyy
from xxxxx import yyyyy

Podemos crear un alias usando la palabra reservada as :


import xxxxx as xx
from xxxxx import yyyyy as yy

Es algo que se usa por convenio en muchas bibliotecas:


import numpy as np
import pandas as pd
14 / 17
Comentarios
En todo lenguaje existen dos tipos de comentarios
# Comentario normal. Desde el # hasta el final de la línea

"""
Comentario multilínea. Todo lo que hay entre dos grupos de tres
comillas (simples o dobles) se interpreta como un comentario.
"""

En realidad la triple comilla es una cadena de caracteres multilínea


No se asigna a ninguna variable, por lo que el intérprete las obvia

15 / 17
Una nota a los que usan Windows
En ocasiones encontraremos bibliotecas que no podremos instalar en
Windows

Problemas de dependencias, falta de binarios, otras bibliotecas a enlazar, ...

Opciones para instalar estas bibliotecas


pip install biblioteca --only-binary biblioteca : Lo mismo el fallo es
porque descarga antes los fuentes que el precompilado, y esto lo fuerza
http://gnuwin32.sourceforge.net: Instaladores de bibliotecas ya compiladas
para sistemas Windows, útil para dependencias
http://www.lfd.uci.edu/~gohlke/pythonlibs/: Instaladores de bibliotecas de
python ya compiladas
16 / 17
¡GRACIAS!

También podría gustarte