¿qué es un Algoritmo?
-
”Un conjunto o grupo de instrucciones que realizadas en orden conducen a obtener la solución de un problema”.
-
Los algoritmos son independientes del lenguaje de programación, se pueden implementar en diferentes lenguajes.
-
Deben ser precisos, libres de ambigüedades.
-
Los programas son implementaciones específicas de algoritmos, pero no todo algoritmo es un programa.
Tipologías de los paquetes cuantitativos, software en línea/local, scripts y línea de comandos/interfaz gráfica
Lenguaje, Kernel e Interfaz Gráfica
Específicamednte, python es el lenguaje de programación: la sintaxis, instrucciones, etc. Esas instrucciones son interpretadas mediante un ‘kernel’, que es un programa. En la práctica se puede usar mediante:
-
Una página web como ‘google colab’, y su interfaz gráfica es el navegador. https://research.colab.google.com (requiere acceso a una cuenta de google)
-
Una distribución como anaconda, cuya interfaz gráfica puede ser ipython o jupyter. https://www.anaconda.com (para Windows pide el correo para instalar, en linux se instala desde su gestor de paquetes
Línea de comandos
El sistema tiene un prompt, donde se ingresan las instrucciones y se ejecutan de manera secuencial. La línea de comandos es útil para cálculos cortos y sencillos.
Scripts / Programas
Las instrucciones se escriben en un archivo (script, o programa). Se carga el script/programa diciéndole al sistema que lo ejecute. Los scripts se usan para operaciones más complejas o repetitivas. Los hay de dos tipos:
-
Scripts de python: formato
.py
-
Cuadernos de Jupyter: formato
.ipynb
Funciones
Existen algunas funciones del lenguaje que se le pueden aplicar a las estructuras de datos para saber información sobre ellas.
type()
: dice qué tipo de datos es el objeto. Por ejemplo:
listav = [] # genera una lista vacía
type(listav) # pregunta el tipo de datos de la lista
¿que cree que pasa al teclear esa instrucción?
len()
: dice el número de ítems en un contenedor. Por ejemplo:
lista3 = [1,1,3,2,1,1] # defino una lista
len(lista3) # averiguamos su tamaño
¿cuánto cree que dirá el computador que es el tamaño de ésta lista?
POO
python
es un lenguaje orientado a objetos. Los objetos son
estructuras de datos que tienen características y funciones. Tanto las características como las funciones se acceden con el punto .
Se utiliza el tabulador (tecla con dos flechas opuestas) para averiguar cuáles son las características o funciones de un objeto.
Por ejemplo si se teclea: lista3.
, seguido por el tabulador, jupyter
da las siguientes opciones:
append() count() insert() reverse()
clear() extend() pop() sort()
copy() index() remove()
Es decir, estas funciones son propias de la clase lista. ¿que cree que
pasa cuando se teclea: lista3.reverse()
?