Introducción

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 26

Laboratorio de Programación Científica

Asistente Graduado: Julio Nicolás Reyes Torres

Prácticá iniciál: Python y Pychárm

Descripción: Esta guía-tutorial está diseñada para ofrecerle al estudiante una introducción al
famoso lenguaje de programación, Python. Se inicia desde su sencillo proceso de instalación, se
contestan algunas inquietudes como: ¿qué es Python?, ¿para qué sirve?, ¿porqué su importancia
en el mundo de la programación? y ¿cómo Python nos ayudará en el curso de programación
científica?. Posteriormente, se presenta Pycharm, programa que será empleado como ambiente de
desarrollo de Python en nuestro curso de programación científica. De igual forma, se explica su
proceso de instalación y se realiza una descripción de su entorno gráfico. Finalmente, mediante una
serie de ejemplos y ejercicios se busca que el estudiante inicie adquieriendo las competencias y
bases de aprendizaje de Python.

Nota: La guía está diseñada tanto para Windows y Mac Os (su uso se extiende para Linux). Los procesos
de instalación de Python y Pycharm se explican en video.

Objetivos:

- Indicar el proceso de instalación de Python y Pycharm


- Dar una descripción de Python y su gran importancia en el análisis matemático
- Describir de forma general las librerías más importantes y útiles que son usadas por la
comunidad científica para el desarrollo de diversas aplicaciones
- Familiarizar al estudiante con el entorno gráfico de Pycharm, indentificar los comandos
importantes, creación de archivos, descarga de librerías y configuración del estilo gráfico.
- Establecer de forma introductoria las bases lógicas y semánticas de sintaxis para programar
en Python.
- Definir y manipular variables para realizar diferentes ejemplos y ejercicios en el Python,
tanto matemáticos, algebráicos, gráficos y de texto.
- Identificar el uso y manejo de arreglos, listas y diccionarios en Python.
1) INSTALACIÓN DE PRÓGRAMAS

Instalación de Python:
Nota: Para este año 2021 en el curso de programación científica vamos a utilizar Python 3.9, última versión de este
lenguaje de programación. Sin embargo, si desean usar otra versión, se recomienda instalar cualquier serie de python 3.7.
Debido, a que existen ciertas incompatibilidades con funciones de Python 3.8, y a desactualizaciones de las demás versiones
(Python 3.6 y Python 2.7).

Nota: Se anexa en video el proceso de instalación de Python 3.9

MacOs: https://youtu.be/YMsJE9jLjV0

Windows: https://youtu.be/gFRtIteXPqo

1. Diríjase a la página oficial de Python en el siguiente enlace: https://www.python.org


2. De click en el botón de descargas (Downloads), luego seleccione el botón en amarillo
(Download Python 3.9.1), automáticamente se descargará el archivo exe o dmg, según sea
su sistema operativo.

3. Abra el archivo ejecutable y siga las instrucciones de configuración.


4. Disfrute Python!
Opcional -> Instalación de versión Python 3.7

1. Diríjase a la página oficial de Python en el siguiente enlace: https://www.python.org


2. De click en el botón de descargas, luego seleccione el link según sea el sistema operativo de
su computador (Windows, Linux, MacOs):
Ejemplo: Computador con Windows

3. Busque la versión de Python: 3.7.7, 3.7.8 o 3.7.9. Descarge el archivo ejecutable, tal como
se muestra en la siguiente figura:

Ejemplo: Python 3.7.7 en Windows

Ejemplo: Python 3.7.7 en MacOs

4. Abra el archivo ejecutable y siga las instrucciones de configuración.


5. Disfrute Python!
Nota: Se anexa en video el proceso de instalación de Python 3.7

MacOs: https://youtu.be/j1y8fpRMbrg

Windows: https://youtu.be/dq5znVnnpwE

Instalación de Pycharm:

Para instalar el software Pycharm, por favor seguir en detalle los siguientes videos.

MacOs: https://youtu.be/suEyBUpRLww
Windows: https://youtu.be/tLf_Q9nIrbI
DESARRÓLLÓ DE LA GUIA

¿Qué es Python?
Es un lenguaje de programación ampliamente usado en el mundo, es acogido por estudiantes de
múltiples disciplinas y su aplicabilidad se extiende hasta el desarrollo de sofware y ámbitos
científicos. Esto se debe, a que Python es un lenguaje Open Source, multiplataforma, interpretado,
orientado a objetos y en general, bastante robusto, lo que permite que mediante una semántica
sencilla, se puedan manejar estructuras de datos integrados de alto nivel en pocas líneas de código.
Además, se caracteriza por el desarrollo rápido de aplicaciones. A continuación, se presenta un
ranking que evalúa la popularidad de Python frente a otros lenguajes de programación.

El PYPL PopularitY of Programming


Language Index analiza qué tan
frecuente se buscan tutoriales de
los lenguajes de programación en
Google.

(http://pypl.github.io/PYPL.html )

Existen 2 versiones de Python, la 2.x y la 3.x. Python tuvo un alto grado de desarrolló y aplicabilidad
con la versión 2.7.x, pero dicha versión fue oficialmente descontinuada el 1 de enero de 2020; es
decir, Python 2 no va a tener más desarrollo en seguridad y mejoras. Python 3 es el gran sucesor, la
sintaxis varía ligeramente manteniendo la esencia de este lenguaje de programación, además
incluye notables mejoras. A continuación, se muestran algunas diferencias en sintaxis entre las 2
versiones de Python.

Imprimir Texto

Recibir datos del teclado (input)

Divisiones
Python integra el uso de diversas librerías que permiten de forma muy útil y eficiente orientar
herramientas para la visualización, computación científica, análisis de datos, Deep learning, etc. A
continuación, se muestran algunos ejemplos con sus respectivas funcionalidades.

Es la librería de computación científica por excelencia en Python,


provee diversas herramientas matemáticas para trabajar con
vectores multidimencionales, también denominados Arrays. Ofrece
una extensa variedad de funciones matemáticas, álgebra lineal,
transformadas de Fourier, etc.

Es una librería para manipulación y análisis de datos. Las estructuras


de datos se conocen por Series (series temporales) o DataFrame
(tablas numéricas). Permite importar datos de diferentes tipos de
archivos como JSON, SQL y. Microsoft Excel. Es ampliamente
utilizado en áreas de finanzas, estadística, econometría, ingeniería,
etc.

Es una librería usada para computación científica, contiene módulos


para optimización, álgebra lineal, interpolación, cálculo, ODE, FFT,
análisis de señales, etc.

Es la librería gráfica por excelencia. Permite hacer diversos tipos de


gráficos de tipo estático y dinámico.

Es una librería para visualización de datos basada en Matplotlib que


provee una interfaz de alto nivel para dibujar datos especialmente
de tipo estadístico. Se integra muy bien con Pandas.
Es una suite de herramientas que permiten integrar mediante
código Python, una interfaz de usuario enriquecida para el
desarrollo de aplicaciones en iOS, Android, macOS, Linux, Windows,
tvOS y más.

Librerías para Machine Learning y Deep Learning

• TensorFlow
• Scikit-Learn
• Keras
• PyTorch

(https://twitter.com/ThePSF/status/1289496094364368897)

En el curso de programación científica vamos a utilizar Python 3!. A medida que avancemos en el
curso, iremos desarrollando ciertas habilidades. Se inicia desde el aprendizaje de la sintaxis y las
estructuras lógicas para programar eficientemente, hasta el desarrollo de las competencias afines
del curso, para que el estudiante pueda analizar e implementar algoritmos que buscan atacar
diversos problemas matemáticos mediante métodos numéricos.
PYCHARM

Es un IDE (Integrated development environment) desarrollado por la compañía checa JetBrains para
el desarrollo de aplicaciones y programas en Python. Es catalogado como Cross-platform
(multiplataforma) que funciona en Windows, MacOS y Linux. El fabricante ofrece 2 versiones, una
libre para la comunidad bajo una licencia Apache y otra Premium-professional bajo una licencia
propietaria.

Características:

• Asistencia en el código, señala errores de sintaxis y realiza correcciones.


• Tiene integrado un debugger.
• Vista de la estructura del archivo, salta fácilmente entre líneas, clases y métodos.
• Soporta frameworks para web: Django, Web2py and Flask.
• Sirve para el desarrollo en Python de Google App Engine.
• Provee su propia API para que los desarrolladores puedan escribir sus propios plugins para
aumentar características en Pycharm.

Cómo abrir un archivo de Python

<<
Seleccionar Nombre del
ambas proyecto

3
4

Entorno gráfico de
Pycharm

5
Identificando las partes del IDE

1. Project view: Archivos y estructura del proyecto


2. Editor: En donde se escribe el código. (Tiene pestañas para facilitar la navegación entre
funciones y archivos)
3. VCS actions: La barra de navegación sobre el editor además le permite ejecutar y depurar
la aplicación.
4. Left gutter: Muestra los puntos de interrupción que tiene el código y proporciona una
manera conveniente de navegar a través de la jerarquía del código. Además, muestra los
números y el historial de VCS por línea.
5. Right gutter: Identifica la calidad del código mostrando los resultados de sus inspecciones:
errores, advertencias, etc.
6. Tool windows: Ventanas especializadas que proporcionan información acerca de la
ubicación del proyecto, advertencias y mensajes sobre la ejecución del código, la búsqueda
y navegación de código fuente, etc.
7. The status bar: Indica el estado del proyecto y el IDE completo, muestra información sobre
la codificación de archivos, separador de línea, perfil de inspección, etc.
Configurando personalización de Pycharm

• En Windows: File | Settings | Editor |


• En Mac/Linux: PyCharm | Preferences | Editor |
Descripción: Python es un lenguaje de programación creado por Guido Van Rossum, y como se
describió anteriormente, es de tipo interpretado, multiplataforma, libre, de alto nivel, poderoso y
eficiente que emplea una sintaxis elegante, simple y dinámica para aceptar programación
multiparadigma; es decir, su enfoque principal es la orientada a objetos, pero acepta programación
imperativa y funcional. Su naturaleza interpretada lo hace ideal para el desarrollo de diferentes
aplicaciones en muchas plataformas. A continuación, vamos iniciar con las bases para entender la
sintaxis y funcionalidades generales de Python.

1. VARIABLES
Una variable es un lugar de memoria en donde guardamos una determinada información, estas
pueden ser de diferentes tipos (números, texto, lógicas, etc). La forma para nombrar una variable
debe cumplir ciertas normas, por ejemplo, No se puede llamar a una variable con los nombres de
los comandos (if, else, for, etc), ni con caracteres especiales como: ñ, ‘ (tildes), . (puntos), etc. Python
diferencia entre mayúsculas y minúsculas, es diferente Num que num.

Nombramiento de una variable:

Correcto Incorrecto

A, a 1,2,3,...

Valor,
2num
num

Num1,
Ho...la
Num10
https://www.coursera.org/lecture/python/1-4-writing-paragraphs-of-code-42bfN

Tipos de datos en Python:

Numéricos
Entero: números enteros positivos o negativos

Flotante: cualquier número real con una representación de coma flotante en el que un
componente fraccional se denota por un símbolo decimal o notación científica

Complex: un número con un componente real e imaginaria representado como 𝑥 + 𝑦𝑗.

Booleano
Python implementa operadores de la lógica booleana. Sus datos son las
asignaciones Verdadero o Falso.

Strings
Es un tipo de dato que representa texto por medio de una secuencia de caracteres.
Se denotan mediante el uso de comillas sencillas (‘xxxxxxx ‘) o dobles (“xxxxxxx”).

Containers
Listas: Una lista es el equivalente a Python de una matriz, pero es redimensionable
y puede contener elementos de diferentes tipos

Tuplas: Una tupla es una lista ordenada (inmutable) de valores. Una tupla es en
muchos aspectos similar a una lista; Una de las diferencias más importantes es que
las tuplas se pueden usar como claves en los diccionarios y como elementos de
conjuntos, mientras que las listas no.

Diccionarios: Un diccionario es un conjunto de datos que guardan una asociación


entre pares de objetos usando una clave:valor (key:value).,

Ejercicio 1: Identifique el tipo de variable asignada en: a, b, c, d

2. Operaciones numéricas
En Python se pueden realizar una gran cantidad de operaciones matemáticas, a continuación se
plantea el siguiente ejercicio para conocer diferentes operaciones entre variables:

Ejercicio 2: Identifique el tipo de operación que guardan las variables: C, D, F, G, H y K.


3. Operaciones con Strings

Ejercicio 3: Identifique las diferentes operaciones con Strings y conteste las preguntas planteadas

Strings con format()


.format() sirve para ‘formatear’ un String en una salida más funcional. Esta función tiene 2 tipos de
parámetros: “Positional” y “Keyword”. Ambos deben llamarse con paréntesis tipo llave: {}. A
continuación, se muestran algunos ejemplos para su mayor entendimiento.

Ejercicio 4: Realice el ejemplo que se muestra a continuación y compruebe el resultado


Resultado esperado

Tipos de formatos numéricos


d Entero decimal
c Carácter de control Unicode
b Binario
o Octal
x Hexadecimal (minúscula)
X Hexadecimal (mayúscula)
n Igual que 'd'. Excepto que usa la configuración regional actual para el separador de números
e Notación exponencial (e minúscula)
E Notación exponencial (E mayúscula)
f Flotante (float). Por defecto con 6 décimas
F Igual que 'f'. La diferencia es que: 'inf' es 'INF' y 'nan' es 'NAN'
g Formato general. Redondea un número a ‘p’ dígitos significativos (6 por defecto)
G Igual a 'g'. Excepto que cambia a 'E' si el número es grande.
% Porcentaje. Multiplica por 100 y pone % al final.

Diferentes formatos numéricos

Ejercicio 5: Realice el ejemplo que se muestra a continuación y compruebe el resultado

Resultado esperado
Nota:

- Observe que se coloca el formato numérico luego de :


- En el ejercicio anterior no se usa ni parámetro ‘positional’ o ‘keyword’, salvo en el último
(línea 75), en dónde se debe colocar {0:} porque está llamando el mismo número varias
veces y es importante definir la posición.

Formatos numéricos con padding (ancho)

Ejercicio 6: Realice el ejemplo que se muestra a continuación y compruebe el resultado

Resultado esperado
Formatos de alineamiento

.format() con alineamiento

< Alineado a la izquierda

^ Centrado

> Alineado a la derecha

= Fuerza el signo (+) (-) a la posición más a la izquierda

Ejercicio 7: Realice los ejemplos que se muestran a continuación y compruebe los resultados.

Resultado esperado
Resultado esperado

4. Listas

En Python una lista es equivalente a un “array” pero es redimensionable y puede tener


diferentes tipos de datos. Se escribe como una lista de valores separados por comas entre
corchetes [].
Para acceder a los elementos de una lista se utiliza un índice entero (empezando por "0",
no por "1")
Son mutables, esto indica que SI se puede modificar el contenido en tiempo de ejecución.
Ejercicio 8: Realice las operaciones que se presentan para las listas llamadas: lista y letras.

5. Diccionarios
Un diccionario es un conjunto de datos que guardan una asociación entre pares de objetos usando
una clave:valor (key:value)., el símbolo (:) separa la clave del valor correspondiente. A continuación,
se nombran las características que tiene un diccionario:

Para declarar un diccionario se emplean las llaves {} y sus elementos internos son separados
por comas.
El contenido de un valor puede ser cualquier tipo de dato y es mutable, es decir, puede ser
cambiado en tiempo de ejecución
Las claves de un diccionario son inmutables, pueden ser tuplas.
Ejercicio 9: ¿Qué contiene al final el diccionario Vertebrados?

Resultado esperado

Diccionarios con .format()

Ejercicio 10: Realice el ejemplo que se muestra a continuación y compruebe el resultado


Resultado esperado

Ejercicios adicionales

1) Juan quiere comprar una Tablet el próximo día sin iva. Diseñe un programa que calcule el
valor que tendría que pagar, si el valor original (con iva) es de $1’499.000.

2) Juan no se decide qué Tablet comprar. Repita el ejercicio anterior, pero ahora pídale a Juan
(el usuario) el valor de cualquier Tablet que desea cotizar. Nota: Recuerde usar input para
recibir información del teclado.

3) Calcular el área de las siguientes figuras geométricas en Python:

y=6m

L = 3 cm d = 8 mm x=5m

L = 5 cm
4) Repita el ejercicio anterior, pero ahora solicite al usuario los datos que requiere para cada
figura geométrica: el valor del radio, la longitud del lado, el diamétro, etc.

5) Calcular el volumen de las siguientes figuras geométricas.

Nota:

- El programa debe solicitar al usuario el valor del radio (r) para la esfera
- Todos los lados del octaedro tienen la misma longitud. De igual forma, debe pedirle
al usuario ese valor (L).

6) María va ir de compras al supermercado. Cree un diccionario que le ayude a Maria recordar


los artículos que necesita, organicelos según los siguientes criterios: Grano, viveres, aseo,
‘Galgerias’, otros. (Nota: Debe haber mínimo 10 elementos por criterio, nombre (María)
también debe ser una ‘clave-key’ en el diccionario.)

7) Utilice .format() para crear una frase que comente qué compró María. (un elemento por
clave)
Bibliografía:
1. López Briega, R. E. (n.d.). Introducción al Cálculo con Python. Retrieved August 10, 2019, from
https://relopezbriega.github.io/blog/2015/12/02/introduccion-al-calculo-con-python/
2. Convolutional Neural Networks for Visual Recognition. (n.d.). Python Numpy Tutorial. Retrieved
August 10, 2019, from http://cs231n.github.io/python-numpy-tutorial/
3. Tutorial python. (n.d.). Variables en python: Texto y números. Retrieved August 10, 2019, from
https://www.tutorialpython.com/variables-en-python/
4. PyCharm. (n.d.). Quick Start Guide. Retrieved August 10, 2019, from
https://www.jetbrains.com/help/pycharm/quick-start-guide.html
5. Python. (n.d.). 3. An Informal Introduction to Python — Python 3.7.4 documentation. Retrieved
August 10, 2019, from https://docs.python.org/3/tutorial/introduction.html#using-python-as-a-
calculator
6. GeeksforGeeks. (n.d.). Python Programming Language - GeeksforGeeks. Retrieved August 19, 2020,
from https://www.geeksforgeeks.org/python-programming-language/?ref=leftbar
7. Scipy. (n.d.). 1. Getting started with Python for science — Scipy lecture notes. Retrieved August 19,
2020, from http://scipy-lectures.org/intro/
8. Tutorialteacher. (n.d.). Python Tutorials. Retrieved August 19, 2020, from
https://www.tutorialsteacher.com/python

También podría gustarte