0% encontró este documento útil (0 votos)
161 vistas10 páginas

2-Primeros Pasos en Python

Este documento presenta un resumen de los primeros pasos en Python, incluyendo cómo escribir el programa "Hola Mundo", usar comentarios y variables, realizar operaciones matemáticas como multiplicación y potenciación, usar bucles "for" para repetir operaciones, y generar tablas trigonométricas usando funciones matemáticas importadas.

Cargado por

David Prada
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)
161 vistas10 páginas

2-Primeros Pasos en Python

Este documento presenta un resumen de los primeros pasos en Python, incluyendo cómo escribir el programa "Hola Mundo", usar comentarios y variables, realizar operaciones matemáticas como multiplicación y potenciación, usar bucles "for" para repetir operaciones, y generar tablas trigonométricas usando funciones matemáticas importadas.

Cargado por

David Prada
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/ 10

Capítulo 2

Primeros Pasos en Python

2.1. Primer programa


El primer programa que escribiremos en Python es, el clásico, hola mundo!.
Para crear este script en Python requerimos de un editor de texto plano (vi, jed,
xemacs, gedit. . . elija su favorito). El archivo creado debe tener la extensión .py
y lo llamamos hola.py. Si está corriendo Jupyter Notebooks, lo que se muestra
a continuación debe estar dentro de una celda de código. En ambos casos, el
código contiene:
hola.py

print ("Hola Mundo!")

Una segunda versión de este programa puede ser más informativa


hola1.py

# Mi primer programa de Python

print ("Hola Mundo!")

Para ejecutar el programa desde la terminal, en la linea de comandos digitar

> python hola.py

que da como resultado

Hola Mundo!

Note que la ejecución del programa se hace directamente en la linea de


comandos y no abriendo Python. Sin embargo, si se tiene abierto Python, se
8 Capítulo 2. Primeros Pasos en Python

puede ejecuar el programa directamente dentro de Python. Si está en Jupyter


notebooks, sólo necesita ejecutar la celda con el código.

2.1.1. Explicación del primer programa


La primera línea del código hola1.py es un comentario. Cualquier texto
después de un símbolo # es un comentario y Python no lo tiene en cuenta.
Al terminar la linea termina el comentario. No hay necesidad de terminar el
comentario con otro símbolo (aunque en otros lenguajes esto si es necesario).
También es posible hacer comentarios dentro de una línea

print ("Hola Mundo!") # imprimir texto

lo cual es válido.
La segundo linea es una linea en blanco. Python no tiene en cuenta estas
lineas, y se puede poner tantas lineas en blanco como se quiera, ya que serán
descartadas por Python. El uso de lineas en blanco permite hacer el código mas
fácil de leer, y permite escribir el código en bloques pequeños.
La siguiente linea si es interpretada por el programa. El comando print
ordena que en la terminal se imprima el texto que está dentro del paréntesis.
Para lineas de texto, deben ir entre comillas o comillas dobles.

2.1.2. Alternativas para el primer programa


Python permite variaciones al programa anterior que también funcionan
hola3.py

# Mi primer programa de Python

x = "Hola Mundo!"
print (x)

y que permiten posteriormente realizar operaciones con variables.


hola4.py

# Mi primer programa de Python

x = "Hola"
y = "Mundo!"
print (x+’ ’+y)

Note que en este último ejemplo, realizamos una operación para pegar o
concatenar variables con caracteres. Con el fin de separar las palabras en las
variables x y y, se pone un espacio. El resultado de estos dos programas es
idéntico al primero.
2.2 Multiplicar dos números enteros 9

2.2. Multiplicar dos números enteros


A continuación, queremos realizar operaciones matemáticas en Python. Aba-
jo, un programa simple para multiplicar dos enteros (2 y 3).

multint.py

# Código para multiplicar dos números enteros

a = 2
b = 3

c = a*b

print(a,"x",b," = ",c)

El programa usa tres variables, las letras a, b y c. Las variables pueden tener
nombres largos, pero no pueden tener espacios. Si quiere unir palabras use _.
El primer caracter de una variable debe ser una letra, el resto puede ser una
combinación de letras, números y _. No se recomienda usar puntos o símbolos
de menos ( ). A diferencia de Fortran o C, Python define de manera automática
si un número es entero o real, aunque si el usuario así lo prefiere, puede definir
la variable como entero:

a = int(2)
b = int(3)

Cuando esto sucede, Python asume entonces que c será un número entero.
Aparentemente en Python existía un problema cuando se dividían dos números
enteros, pero la respuesta era un real. En la versión que yo tengo (3.4+) ese
problema ya no se presenta.
El resultado del programa anterior da como resultado

> python multint.py


2 x 3 = 6

como es de esperarse. El símbolo ⇤ indica multiplicación casi como en la mayoría


de lenguajes de programación. Adición es +, resta es y división es /. En
Python, para elevar un número a a la b potencia, se escribe a**b, y las dos
variables pueden ser reales.
Otro ejemplo, para elevar un número real a la b potencia.

c = ab
10 Capítulo 2. Primeros Pasos en Python

real_elev.py

# Código simple para elevar un número entero a la b potencia.

a = 2.01
b = 3.2
c = a**b

print(a, "elevado a la ",b," = ", c)

2.01 elevado a la 3.2 = 9.337430530829119

2.3. for loops


Cualquier lenguaje de programación debe permitir realizar una serie de ope-
raciones de manera repetida. Esto significa permitir realizar un loop para una
serie de valores de una variable. En C o matlab, esto se lleva a cabo con un for
loop, en Fortran se hace con un do loop. En Python se usa el for.
Un ejemplo simple para generar la tabla de multiplicar del 7 (7 ⇥ 0, 7 ⇥ 1, 7 ⇥
2, ...)
mult_table.py

# Genere la tabla de multiplicar del 7.

x = 7 # la tabla del 7

for y in range(10): # loop 0, 1, 2, ..., 9


z = x*y
print(x,’x’,y,’ = ’,z)

7 x 0 = 0
7 x 1 = 7
...
7 x 8 = 56
7 x 9 = 63

El for loop es un comando que ejecuta una serie de comandos (que deben
estar indentados). El número de veces o la forma como los ejecuta depende del
código

for y in range(10):
2.3 for loops 11

Acá la variable y toma valores en un rango de 0 hasta 9. Es decir repite la


operación 10 veces, empezando en cero, hasta llegar al nueve. Porqué Python
no incluye el 10? El comando range genera 10 números, pero Python (como
C) empiezan el conteo con el cero, es decir (0, 1, 2, ..., 9), para un total de 10
números.
Como se puede ver, en el primer loop, y = 0, en el segundo y = 1 y así
sucesivamente. Una segunda versión del mismo código
mult_table2.py

# Genere la tabla de multiplicar del 7.

import numpy as np

x = 7 # la tabla del 7
i = np.arange(10)

for y in i: # loop 0, 1, 2, ..., 9


z = x*y
print(x,’x’,y,’ = ’,z)

El resultado de esta segunda versión del código es la misma a la anterior,


pero tiene variaciones. Python tiene una larga lista de librerías (conocidas como
modules, o packages) para realizar operaciones de todo tipo. Para poder uti-
lizarlas en un programa, es necesario cargarlas. Esto se realiza con el comando
import. En este caso, importamos el paquete NumPy.

import numpy as np

NumPy tiene multiples funciones para realizar operaciones en variables, vecto-


res, etc.
Para usar una función dentro de NumPy, se debe llamar el paquete numpy
y la función arange. Para que esta operación no sea muy larga, le ponemos un
nombre más corto np. Esto permite usar la función ‘arange‘ dentro de NumPy,
y generar un vector

i = np.arange(10)

Este comando genera un arreglo (o un vector), con valores que van desde 0 hasta
9. Es algo muy similar a lo que hace range(10), pero lo pone en el arreglo (o
variable) i

2.3.1. Una tabla trigonemétrica con for loops


A continuación se muestra un ejemplo de código para realizar una tabla de
funciones trigonométricas:
12 Capítulo 2. Primeros Pasos en Python

trigtable.py

# Genera una tabla trigonométrica simple.


# Imprima los resultados para cos, sin, tan.
#

import math
import numpy as np

i = np.arange(90)

for ang in i :
theta = float(ang/180.*math.pi)
ctheta = math.cos(theta)
stheta = math.sin(theta)
ttheta = math.tan(theta)

print (ang,ctheta,stheta,ttheta)

0 1.0 0.0 0.0


1 0.9998476951563913 0.01745240643728351 0.017455064928217585
2 0.9993908270190958 0.03489949670250097 0.03492076949174773
...
88 0.03489949670250108 0.9993908270190958 28.636253282915515
89 0.0174524064372836 0.9998476951563913 57.289961630759144

Las funciones trigonométricas no hacen parte de las funciones estandar de


Python, por lo tanto se debe cargar el módulo math. con el comando

import math

El módulo contiene el valor de ⇡ en la variable math.pi. Además tiene funciones


para calcular coseno (math.cos), seno (math.sin), y tangente (math.tan) y mucho
más (ver ejemplos más adelante).
Tal como lo hacen C, Fortran o Matlab, el cálculo trigonométrico se hace
en radianes (no grados) como argumento en las funciones trigonométricas. Por
esto, es necesario convertir los ángulos en grados (↵), a radianes ✓.


✓=↵
180

Aunque el resultado anterior es correcto, la tabla que se muestra no es muy


fácil de leer. Para mejorar el formato de salida del resultado
2.3 for loops 13

trigtable2.py

# Genera una tabla trigonométrica simple.


# Imprima los resultados para cos, sin, tan.
# Ahora, imprima los resultados con mejor presentación
#

import math
import numpy as np

i = np.arange(90)

for ang in i :
theta = float(ang/180.*math.pi)
ctheta = math.cos(theta)
stheta = math.sin(theta)
ttheta = math.tan(theta)

# Desplegar resultados más amables


print ("%5.1f, %7.4f, %7.4f, %8.4f"
% (ang,ctheta,stheta,ttheta))

0.0, 1.0000, 0.0000, 0.0000


1.0, 0.9998, 0.0175, 0.0175
2.0, 0.9994, 0.0349, 0.0349
...
88.0, 0.0349, 0.9994, 28.6363
89.0, 0.0175, 0.9998, 57.2900

El código hace la misma operación para el ángulo ang

for ang in i :
theta = float(ang/180.*math.pi)
ctheta = math.cos(theta)
...

que toma sucesivamente los valores del arreglo i, es decir en cada itera-
ción 0, 1, 2, ..., 88, 89. A partir de ese valor, definimos nuestro ángulo theta en
radianes, usando la función float. Es decir, theta asume valores sucesivos
de 0,0, 1,0, 2,0, ..., 88,0, 89,0 en cada iteración, convertidos a radianes. Personal-
mente recomiendo siempre realizar las iteraciones sobre un vector de números
enteros (i), ya que dependiendo de errores de rounding pueden evitar que se
llegue exactamente hasta 89,0.
NOTA: EL FOR SE CIERRA CON DOS PUNTOS (:). Y DEBE
HABER UNA INDENTACIÓN DE LOS COMANDOS QUE ESTAN
14 Capítulo 2. Primeros Pasos en Python

DENTRO DEL LOOP. A diferencia de otros lenguajes, Python no tiene un


end para el loop.
Dentro de cada for loop, se calculan los cosenos, senos y tangentes del ángulo
theta. Finalmente, en cada loop, se imprime los resultados

print ("%5.1f, %7.4f, %7.4f, %8.4f"


% (theta,ctheta,stheta,ttheta))

donde el comando print tiene un formato especificado por el usuario. En este


caso %5.1f ordena que la variable theta se imprima como un número real con 5
espacios en total, y 1 dígito a la derecha del punto decimal. Igualmente, el uso de
7.4f ordena que ctheta tenga 7 espacios y 4 números a la derecha del decimal.
Las números están justificados a la derecha. Como Python no tiene en cuenta
espacios o saltos de linea, la continuidad del comando dentro del paréntesis es
automático. Es decir que el comando en el bloque de código arriba, es un sólo
comando.

2.3.2. Posibles Variaciones


El código a continuación sugiere dos posibles variaciones que pueden ser
útiles.
trigtable2.py

# trigtable3.py
# Genera una tabla trigonométrica simple.
# Imprima los resultados para cos, sin, tan.
# Ahora, imprima los resultados con mejor presentación
# Defina el formato desde el comienzo
#

from math import *


import numpy as np

# definir formato al comienzo


fmt = "%5.1f, %7.4f, %7.4f, %8.4f"

i = np.arange(90)

for ang in i :
theta = float(ang/180.*pi)
ctheta = cos(theta)
stheta = sin(theta)
ttheta = tan(theta)

print(fmt % (ang,ctheta,stheta,ttheta))
2.4 Funciones del modulo math 15

donde se importan todas las funciones dentro del modulo math de tal forma
que no hay necesidad de llamarlos con math.cos, sino directamente con cos.
Adicionalmente, uno puede definir una variable fmt, que tiene los caracteres
que definen el formato de salida. Esto es útil cuando uno va a utilizar comandos
print en múltiples casos dentro de un programa. El modulo math tiene guardado
el valor de ⇡ en la variable pi.

2.4. Funciones del modulo math


Acá se muestran otras (no todas) funciones que se encuentran en el modulo.

ceil(x). smallest integer greater or equal than x


fabs(x) Absolute calue of x
floor(x) largest integer value less than or equal to x
isinf(x). Check if the float x is positive or negative infinity.
isnan(x) Check if the float x is a NaN (not a number).
exp(x) exponential
log10(x) base 10 log
log(x) return the natural logarithm of x
sqrt(x) square root
acos(x) arccosine
asin(x) arcsine
atan(x) arctangent
atan2(y,x) arctangent of y/x in correct quadrant (***very useful!)
cos(x) cosine
cosh(x) hyperbolic cosine
sin(x) sine
sinh(x) hyperbolic sine
tan(x) tangent
tanh(x) hyperbolic tangent
degrees(x) Convert angle x from radians to degrees.
radians(x) Convert angle x from degrees to radians.

y constantes dentro del módulo

pi valor de pi=3.14159265...
e valor de la constante e=2.718281...

2.5. Sobre formatos


Python permite desplegar en la terminal los números y caracteres en dife-
rentes formatos. Acá algunos ejemplos útiles

%5i = entero, con 5 espacios, justificado a la derecha

%5.4i = igual, pero con 0’s a la izquierda (88 es 0088)


16 Capítulo 2. Primeros Pasos en Python

%8.3f = real, 8 espacios, con 3 a la derecha del punto decimal

%12.4e = real con exponente, 4 valores a la derecha del decimal


p.e., b-0.2342E+02 donde "b" is espacio en blanco
(sirve para escribir valores grandes y pequeños,
o cuando no se sabe que tamaño tendrán los valores)

%8s = lista de caracteres, ocho espacios, justificado a la


derecha. Si la lista de caracteres es mayor a 8, se
imprimen todas.

%.8s = igual, pero sólo los primeros 8 caracteres se imprimen.

También podría gustarte