0% encontró este documento útil (0 votos)
137 vistas

Clase 2 - Introducción A La Programación Con Python (Parte I)

Este documento presenta una introducción a la programación con Python. Explica objetivos como realizar una primera aproximación al lenguaje Python y conocer distintas formas de desarrollo con él. Incluye conceptos como programación, lenguajes de programación, Python como lenguaje interpretado, formas de desarrollo como Python tradicional e IPython notebooks, y nociones básicas como variables, asignación, expresiones, objetos y punteros, y operadores.

Cargado por

mp3elv1428
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
137 vistas

Clase 2 - Introducción A La Programación Con Python (Parte I)

Este documento presenta una introducción a la programación con Python. Explica objetivos como realizar una primera aproximación al lenguaje Python y conocer distintas formas de desarrollo con él. Incluye conceptos como programación, lenguajes de programación, Python como lenguaje interpretado, formas de desarrollo como Python tradicional e IPython notebooks, y nociones básicas como variables, asignación, expresiones, objetos y punteros, y operadores.

Cargado por

mp3elv1428
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 47

Clase 02.

Data Science

Introducción a la
programación con Python
(Parte I)
¿DUDAS DEL ON-
BOARDING?
MIRALO AQUI
RECUERDA PONER A GRABAR
LA CLASE
● Realizar una primera aproximación al
lenguaje de programación Python.
● Conocer las distintas formas de desarrollo
OBJETIVOS DE LA con Python.

CLASE
MAPA DE CONCEPTOS
MAPA DE CONCEPTOS CLASE 2

Programación y
lenguajes
Toma de contacto
Python como lenguaje
con Python
Interpretado vs
Compilado
Basics: Variables,
asignación, operaciones

Python tradicional
Formas de desarrollo Estructuras
con Python
IPython y notebooks
Funciones

Tipos de datos
CRONOGRAMA DEL CURSO
Clase 1 Clase 2 Clase 3

La necesidad de Introducción a la Introducción a la


información en la programación con programación con
Industria 4.0 Python (Parte I) Python (Parte II)

TRANSFORMACIÓN DIGITAL NOCIONES BÁSICAS PRÁCTICA CON FUNCIONES

ESTRATEGIA DATA-DRIVEN
TOMA DE CONTACTO
CON PYTHON
Desde el principio:
Programación y Python
¿Qué es la programación?
● La programación es una forma de ejecutar un
algoritmo.
● Un algoritmo es una secuencia de pasos que lleva a
un resultado.
● Una receta es un algoritmo.
● Si se sigue el algoritmo, se llega al resultado.
Programa y computadora
● La computadora nació para resolver cálculos.
● La programación es un complemento para la computadora.
● Es una forma de que la computadora entienda el funcionamiento de un
algoritmo y lo ejecute.
● La computadora entiende ceros y unos (lenguaje binario), nosotros no.
● Por lo tanto, un programa traduce un lenguaje humano a lenguaje
binario.
Programación y lenguajes
● No existe un solo lenguaje que solucione todos los problemas
● Cada lenguaje resuelve un conjunto de problemas posibles:
Empresariales, Web, etc.
● Para Data Science, existen algunos lenguajes que funcionan muy bien:
Python, R, Julia y Scala son algunos de ellos.\

Python R Julia Scala


Python rocks!
Python es el lenguaje más solicitado en las búsquedas laborales
relacionadas con Data Science y se ubica entre el segundo y tercer puesto
en 2021 de acuerdo a varios rankings de lenguajes de desarrollo general (no
sólo Data Science).

En otras palabras, Python no puede faltar en un portfolio de Data Science.


¿Interpretado o
PYTHON ES UN LENGUAJE INTERPRETADO,
Compilado?
ESTO QUIERE DECIR QUE:

● Usa un programa intérprete que traduce en tiempo casi real nuestras órdenes
a binario.
● La traducción se hace línea por línea.
● Podemos probar código “de a pedacitos”.
● El lenguaje compilado se traduce todo junto al final.
● No es simplemente una mejora, es una forma de trabajar muy útil para Data
Science.
Python en pocas palabras
(PYTHON IN A NUTSHELL)

● Lenguaje Open Source


(un código abierto y accesible diseñado para que cualquier pueden ver, modificar y
distribuirlo).
● Su fuerte es la simplicidad y la facilidad para compartir código.
● Cuenta con 3 componentes:
○ Intérprete: programa intérprete, traductor a binario.
○ IDE: entorno de desarrollo, lugar donde escribiremos código.
○ Paquetes: conjuntos de funciones pre-armadas para problemas habituales.
Formas de desarrollo
con Python
Python tradicional
● Tradicionalmente Python puede desarrollarse en Anaconda, o en su versión
simplificada, Miniconda.
● Además, puede utilizarse de varias otras formas.
○ La forma más básica es escribiendo python en la terminal, lo que abre un entorno de trabajo
dentro de la misma terminal.
⚠ NO es la forma más cómoda, ni la más utilizada.
○ Otra forma más útil es usando Python interactivo (IPython). Puede accederse escribiendo
ipython en la terminal.
⚠ No aporta muchas mejoras si se usa de esa forma.

¡Existe una forma mejor! 💪


IPython y notebooks
Las notebooks siguen siendo IPython, pero con vitaminas 🚀

● Escribimos código en el navegador que resulta ser el IDE.


● El código pasa por el mismo intérprete que el que usa la terminal, pero
todo se trabaja en el navegador.
● El código se escribe en cajas de texto que pueden ejecutarse de a una o
todas juntas.
● El conjunto total de cajas de texto es una notebook.

👉 Esta configuración SÍ es de las más utilizadas para Data Science.


🔗
Guía de instalación de Python con Miniconda, Jup
yter notebooks y Google Colab

BREAK
¡5/10 MINUTOS Y
VOLVEMOS!
NOCIONES BÁSICAS DE
PROGRAMACIÓN
Basics: Variables, asignación,
expresiones
Pensemos en una fórmula
Pensemos en una fórmula
● En la expresión x + y = z queremos representar que la suma de los
números x e y dará como resultado el número z
● Si lo quisiéramos programar, podríamos pensarlo así:
1. Ingresar un número, que cumplirá el rol de la x
2. Ingresar un número, que cumplirá el rol de la y
3. Decirle a la computadora que efectúe la suma de x e y
4. Al resultado lo haremos cumplir el rol de la z
5. Mostrar al usuario el valor de z como resultado
Pensemos en una fórmula
● Toda vez que a un símbolo le damos un valor (x = 2) estamos haciendo una
asignación. En Python:
x=2 #asignamos números
y=3
z=x+y #realizamos la suma
z #en z se encuentra el resultado
5 #se muestra el resultado

● Cada parte del código “compuesta” que represente un valor concreto (x + y)


es una expresión.
● Este razonamiento es análogo a las expresiones matemáticas.
Objetos y punteros
● Python es un lenguaje orientado a objetos
● Es así que en Python todo es un objeto, o sea, cuenta con:
○ Datos
○ Metadatos, atributos o propiedades (un punto y una palabra sin paréntesis):
X.atributo 👉 Un atributo caracteriza al dato

○ Funcionalidad o métodos (un punto y una palabra con paréntesis):


x.método() 👉 Un método es algo que el dato puede hacer, por lo tanto al ejecutarlo le estamos
pidiendo al dato que ejecute una acción
Objetos y punteros
x=1.0
x.is_integer() # ¿es x un entero? se lo preguntamos con el método is_integer()

x=1.4
x.is_integer() # ¿y ahora? se lo preguntamos de vuelta

print(x.real,x.imag) # miramos los atributos de x, en este caso su parte real


# y su parte imaginaria
Objetos y punteros
● Las variables en Python no contienen los datos, sino que apuntan a los
datos.
● Esta es la forma de trabajo de los punteros, lo que hace que el lenguaje
sea más eficiente.
PRÁCTICA
RÁPIDA
¿Cuáles son las salidas de los siguientes bloques de código?

¡ESCRÍBELO EN EL CHAT!
¿No notaste algo raro en el ejercicio anterior...?
Objetos y punteros
● Cuando operamos sobre una variable (método) operamos
sobre el objeto al que apunta.
● Cuando realizamos una asignación (=) conectamos
(apuntamos) la variable al objeto. Aquí no cambiamos el
objeto.
Objetos y punteros
x = [1, 2, 3] # x es una lista
y=x # el objeto al que apunta x ([1, 2, 3]) ahora es también
# apuntado por y
print(y is x) # x e y son el mismo objeto (True)
print(x,y) # [1, 2, 3] [1, 2, 3]
x.append(4) # aquí operó sobre el objeto [1, 2, 3] apuntado por x.
# Los métodos se identifican luego de un punto (x.método())
print(y) # como x e y apuntan al mismo objeto, y refleja los cambios
x = "hola" # al realizar asignación, ahora x apunta al objeto texto
# (string) "hola"
print(x is y) # x e y ahora no apuntan al mismo objeto (False)
print(x,y) # x e y apuntan a dos objetos diferentes (“hola” [1, 2, 3, 4])
Objetos y punteros
La diferencia es muy sutil y en general no afecta el trabajo de Data
Science. No obstante, no todos los lenguajes se comportan así.

⚠ Hay que tener en cuenta esto para no cometer errores.


- Un método comienza por un punto después de la variable.
- El método modifica el objeto apuntado por la variable.
- La variable no es, ni contiene al objeto.
- La asignación “conecta” a la variable con el objeto apuntado.
Operadores
● Los operadores permiten trabajar sobre las variables, a la manera de las
operaciones matemáticas.
● Cada operador da un resultado como salida.
● Identificamos 4 tipo de operadores:

■ Operadores aritméticos
■ Operadores de asignaciones
■ Operadores de identidad y pertinencia
Operadores aritméticos
● Los operadores aritméticos son directamente operaciones matemáticas
estándar.
Aritméticos
a+b Suma
a-b Resta
a*b Multiplicación
a/b División
a // b División entera (resultado sin decimal)
a%b Módulo (resto de la división entera)
a ** b Exponenciación
-a Negativo
Operadores de asignaciones
● Los asignadores simplifican operadores aritméticos comunes.

Asignaciones
a += b a=a+b
a -= b a=a-b
a *= b a=a*b
a /= b a=a/b
a //= b a = a // b
a %= b a=a%b
a **= b a = a ** b
Operadores de comparación
● Los comparadores dan resultados lógicos (si/no, true/false)

Comparadores

a == b a igual a b

a != b a distinto de b

a<b a menor a b

a>b a mayor a b

a <= b a menor o igual que b

a >= b a mayor o igual que b


Operadores de identidad y
pertenencia
● Los operadores de identidad y pertenencia verifican relaciones entre objetos.
● Dentro de esta categoría, los operadores “in”, como casos particulares, buscan
objetos dentro de listas. ¡Son muy útiles!

Identidad y pertenencia
a is b a es el mismo objeto que b
a is not b a no es el mismo objeto que b
a in b a está contenido en b
a not in b a no está contenido en b
¿QUIERES SABER MÁS? TE
DEJAMOS MATERIAL AMPLIADO
DE LA CLASE
● Guía de instalación de Python con Miniconda, Jupyter
notebooks y Google Colab
| Guillermo Leale

Disponible en nuestro repositorio.


¿PREGUNT
AS?
¡MUCHAS
-
GRACIAS!
Resumen de lo visto en clase hoy:
Programar en Python: ¿de qué se trata y qué
hay que tener en cuenta?
OPINA Y VALORA ESTA
CLASE
#DEMOCRATIZANDOLAEDUC
ACIÓN

También podría gustarte