Phyton Coursera
Phyton Coursera
1.1. Introducción
Los computadores son máquinas que realizan tareas, para hacerlas necesitan recibir instrucciones.
Dar instrucciones a una máquina no es nada sencillo. De hecho, las máquinas no entienden instrucciones si no
son claras, específicas y no ambiguas. Y nosotros los humanos no estamos acostumbrados a hablar así.
Lenguaje
Sintaxis: Es la forma del lenguaje y describe las posibles combinaciones de símbolos que son correctos.
Generaciones
La primera generación es la que se denomina también lenguaje máquina o código máquina.
Es el lenguaje que interpreta directamente el computador, ceros y unos.
Este es el único lenguaje que el computador entiende.
Sin embargo, se trata de un lenguaje muy complejo para programar para los humanos.
El lenguaje de programación de bajo nivel es un tipo de lenguaje que es un poco más complejo que los ceros y
unos, pero también son instrucciones muy atómicas.
Esas instrucciones ejercen un control directo sobre el hardware o la parte física del computador. Es decir, el
teclado o la pantalla.
Uno de los ejemplos más clásicos de este tipo de lenguajes es el ensamblador.
Los lenguajes de alto nivel se caracterizan por codificar las instrucciones para un computador de la forma más
parecida al lenguaje humano.
Por ejemplo, este tipo de lenguajes de alto nivel utiliza palabras como if, que en inglés se utiliza para expresar
condiciones, o for, que en inglés significa utilizar para repetir varias veces.
Entre los programas más famosos de alto nivel encontramos, por ejemplo, el lenguaje C, el C++ o el Java.
Python es un lenguaje de alto nivel que nos ofrece una sintaxis muy sencilla y una semántica fácil de entender.
Nos permite construir programas capaces de enviar mensajes directamente al computador que finalmente se
traducen en unos y ceros.
Todo lenguaje de programación sigue una estructura muy similar con una sintaxis y una semántica parecida a
Python.
1.1.3. El lenguaje Python
Los Monty Python un grupo de humoristas que debemos el nombre del lenguaje de programación Python
justo a este grupo.
El lenguaje de programación Python es un lenguaje de alto nivel. Es decir, un lenguaje que trata de parecerse
lo más posible a nuestro lenguaje natural, al lenguaje de los humanos. De hecho, una de las características que
lo han hecho tan famoso es justo su simplicidad.
Características
Multiplataforma: Los programas creados en este lenguaje se pueden funcionar o interpretar en cualquier
sistema operativo. Windows, Apple o Linux, podrás ejecutar este tipo de programas.
Multiparadigma: Soporta más de un paradigma de programación. O, lo que es lo mismo, que soporta distintos
estilos de programación y puede utilizarse para cualquier tipo de programa. Por ejemplo, una calculadora,
páginas web de cualquier tipo, tiendas on-line, páginas web de búsqueda, para controlar los movimientos de
un robot, data science.
"Run" es la palabra que, en inglés, se utiliza para decirle al entorno de programación que corra el programa.
2. 1. Variables y expresiones
Consideremos que al nivel más básico el computador funciona únicamente con impulsos eléctricos que
pueden representar o bien un 1 o bien un 0. Entonces, ¿vamos a tener que trabajar siempre representando 1 y
0 que es lo que entiende el computador? Por suerte no es necesariamente así.
El tipo de datos float. Y este permite representar números que tengan un punto decimal. Lo que también
llamamos números de puntos flotante que incluye números positivos y negativos. Va a ser la mejor
aproximación que vamos a tener en el lenguaje para poder trabajar con números reales.
Todo número que tenga un punto decimal también pertenece al tipo float aun cuando aquí su valor
matemático sea el que corresponda a un número entero como en el caso de menos 3.0 que también es de tipo
float.
El tipo str es el que vamos a utilizar para representar secuencias o cadenas de texto o caracteres, ¿y qué
caracteres pueden ser? Bueno, pueden ser espacios en blanco, números, letras, símbolos matemáticos, de
puntuación. Lo vamos a usar cuando queramos representar cualquier tipo de texto.
Si ponemos atención, vamos a notar que todos estos textos que están escritos aquí empiezan y terminan ya
sea o con comilla simple algunos o con comilla doble otros. Estos símbolos no son parte del string, pero sí nos
sirven para delimitar y decirle a Python dónde comienza y dónde termina el string.
Pero si ahora lo escribimos entre comillas, ya no es un número entero, sino que representa un string que
contiene el carácter 4 que no tiene valor numérico y es del tipo str.
El tipo bool, que es el tipo de datos que representa valores booleanos o de la lógica binaria. La cual se llama así
en honor a George Boole, quien fue la persona que desarrolló el álgebra booleana basada en dos valores de
verdad. El valor verdadero, True, o el valor falso, False. Vamos a usarlo cuando queramos responder a una
pregunta donde la respuesta pueda resumirse en un sí o un no. De esta manera los únicos valores que
podemos aceptar en el tipo de dato bool son el valor verdadero, True, y el valor falso, False.
Si le ponemos entre comillas ya no es un tipo bool, sino que pasa a ser un tipo string.
Y también debemos tener cuidado con las mayúsculas. Tanto true como false tienen una manera de escribirse
en que la primera letra es mayúscula.
Si no sabemos qué tipo de dato estamos usando, entonces podemos escribir type entre paréntesis y pasarle un
valor, y Python nos dirá cuál es el tipo de datos del valor que le estamos consultando.
Podemos construir lo que llamamos "expresiones" utilizando datos y operadores y, cada expresión, puede ser
evaluada por el intérprete de Python para obtener un nuevo valor. Veamos, primero, cómo podemos operar
sobre los tipos numéricos "int" y "float".
Operaciones como la negación que se le aplica a un número para obtener su inverso aditivo. Tenemos la
operación de "exponenciación", que utiliza el primer número como base y el segundo como exponente.
También, tenemos la operación de "división entera" que efectúa una división, pero, en este caso, solamente a
la parte entera del cociente e ignora el resto. Y la operación "módulo", que entrega el resto de la división del
primer número por el segundo número.
Cuando tenemos más de un operador en una misma expresión, esta se evalúa siempre de acuerdo a la
precedencia de los operadores, la prioridad que tienen.
Cuando tenemos operadores con la misma precedencia, estos se evalúan de acuerdo con su regla de
asociatividad.
Operadores de comparación
Operadores lógicos
Ahora vamos a poder mezclar en una misma expresión operaciones aritméticas, comparaciones y operaciones
lógicas.
¿Cómo sabemos cómo evaluarla?
Python nos provee operadores aritméticos para manipular valores numéricos, operadores para compararlos,
operadores lógicos para valores de tipo "bool", y operadores para manipular valores de tipo texto o "strings".
3.1.1 If – Else
3.1.2. If
3.1.3. Elif
3.2.1. While
3.2.2 For
NOTA:
Función
Parámetros son elementos que recibe una función para luego poder trabajar con ellos. Pueden ser variables,
que serán utilizadas en el código de la función, o valores constantes.
Estos parámetros se entregan al momento de llamar a la función, y se modifican según sea la necesidad de
acuerdo con cada caso en el cual se ejecuta la función.
Es muy importante que las funciones entregan un valor, porque este valor se puede utilizar posteriormente
luego que la función ha terminado de ejecutar. Por ejemplo, igualando el llamado de la función a una variable
de modo que esta tome el valor de retorno de la función.
Para poder entregar el valor de retorno, escribimos dentro de la función la palabra clave return, la cual se
escribe al programar la función.
Un caso muy utilizado que combina ambos aprendizajes, parámetros y valor de retorno es el de las funciones
booleanas, las cuales corresponden a funciones que reciben parámetros de algún tipo, y entregan al usuario
un resultado del tipo verdadero o falso.