0% encontró este documento útil (0 votos)
60 vistas32 páginas

PAUL ANDRES - Laboratorio 1 - 1 - Python

Este documento presenta instrucciones para un laboratorio de Python. El objetivo es aprender la instalación y uso de Python para materias de ingeniería eléctrica. Se incluyen instrucciones para instalar Python e IDEs, un tutorial sobre librerías como NumPy y Pandas, ejercicios de programación, y preguntas para responder. Los estudiantes deben instalar Python, completar el curso en línea, hacer ejercicios de programación, y responder preguntas sobre Python y su uso.
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)
60 vistas32 páginas

PAUL ANDRES - Laboratorio 1 - 1 - Python

Este documento presenta instrucciones para un laboratorio de Python. El objetivo es aprender la instalación y uso de Python para materias de ingeniería eléctrica. Se incluyen instrucciones para instalar Python e IDEs, un tutorial sobre librerías como NumPy y Pandas, ejercicios de programación, y preguntas para responder. Los estudiantes deben instalar Python, completar el curso en línea, hacer ejercicios de programación, y responder preguntas sobre Python y su uso.
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/ 32

Departamento de Eléctrica y Electrónica

Cursos AM, CI, PE, PDS, S&S

Laboratorio 1_1: Python

Nombre alumno: Paul Andrés Mosquera R.


Fecha: 08/11/2022

Objetivo

Aprender la instalación y el manejo del programa Python para usarlo en las distintas materias
de la carrera de Ingeniería Electrónica

Instrucciones

1. Respetar el código de ética


2. Revisar las instrucciones que se encuentran más adelante

Código de ética

Recuerde que existe el siguiente acuerdo de los estudiantes expuesto en el Sistema de


Gestión del Silabo Docente que dice:

Ser honesto, no copiar, no mentir

Además, está vigente el código de ética de la institución en la siguiente dirección


.https://usgn.espe.edu.ec/base-legal-espe/

Declaración

Declaro respetar y acatar el código de ética


Si x No

Instrucciones

1. Instalación de Python
A continuación se presenta dos formas de instalar el programa Python (windows o
linux):
● Usando la fuente de Python, https://www.python.org/
● Usando Anaconda, https://www.anaconda.com/
IDE
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
A continuación se propone una lista de IDE’s y editores de texto para el manejo
de Python

● Spyder, https://www.spyder-ide.org/
● PyCharm, https://www.jetbrains.com/pycharm/
● Gedit (Linux), https://gedit.en.softonic.com/
● Online (colab, gdb-online, etc), https://www.onlinegdb.com/

2. Tutorial de Python
A continuación se presentan los temas de Python necesarios para desarrollar el curso.
En esta parte, usted debe hacer las consultas correspondientes, de ser el caso:

Tema Contenido

Numpy NumPy (short for Numerical Python) is an open


source library for doing scientific computing.
● Arrays
● Array indexing
● Datatypes
● Array math
● Broadcasting

SciPy SciPy is a scientific library to perform


Mathematical, Scientific and Engineering
Computations
● MATLAB files
● Distance between points

Matplotlib Matplotlib is one of the most popular Python


packages used for data visualization
● Plotting
● Subplots

Seaborn Seaborn is complementary to Matplotlib and it


specifically targets statistical data visualization.

Pandas Pandas is a fast, powerful, flexible and easy to use


open source data analysis and manipulation tool,
built on top of the Python programming language.

● Manejo de archivos CSV & text files

3. Curso en línea
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S

Para aprender el uso del programa Python existen varios cursos en internet,
uno de ellos es el curso que se encuentra en el siguiente enlace de referencia
Curso online de Python

4. Ejercicios
Desarrollar las siguientes actividades:
● Tomar el curso online
Además, implementar los ejercicios de programación de que encuentran en los
siguientes enlaces
● 2 Ejercicios de Condicionales
● 2 Ejercicios de Bucles
● 2 Ejercicios de Listas
● 2 Ejercicios de Tuplas
● 2 Ejercicios de Diccionarios
● 2 Ejercicios de Funciones
Cada estudiante debe elegir los ejercicios que va a desarrollar
● Ejecutar los scripts que se encuentran en seaborn-tutorial
● Desarrollar un programa para leer un archivo .csv
● Desarrollar un programa para leer un archivo excel

5. Preguntas
Responder las siguientes preguntas:
● ¿Por qué debería preferir Python, respecto a Matlab u otros programas
equivalentes?. Al menos 100 palabras
● ¿Por qué cree que en Ecuador no se ha desarrollado un programa
similar a Python o Matlab (Octave, R)?
● ¿Cuál prefiere usar para este curso: PyCharm o Spyder?
● ¿Recomendaría el curso online?. Responder en al menos 200 palabras
● ¿Qué significa el concepto element-wise en el manejo de matrices en
Python?. Poner un ejemplo usando multiplicación matrices de tamaño
50x50
● ¿Se puede pasar de list a array, y viceversa?
● ¿La librería Seaborn puede trabajar independiente de Matplotlib?

Desarrollo
En esta parte debe hacer:
a) Instalar python en su computador
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
b) Instalar un IDE en su computador y verificar su funcionamiento
c) Abrir en un navegador colab y gdb-online y verificar su funcionamiento
d) Tomar el curso online
e) Desarrollar los ejercicios planteados. Puede usar un IDE o el navegador
2 ejercicios de Condicionales
Ejercicio 1

Ejercicio 2

2 ejercicios de Bucles
Ejercicio 1

Ejercicio 2

2 ejercicios de Listas
Ejercicio 1
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S

Ejercicio 2

2 ejercicios de Tuplas
Ejercicio 1

Ejercicio 2

2 ejercicios de Diccionarios
Ejercicio 1
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S

Ejercicio 2

2 ejercicios de Funciones
Ejercicio 1

Ejercicio 2
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S

f) Responder las preguntas planteadas


• ¿Por qué debería preferir Python, respecto a Matlab u otros
programas equivalentes? Al menos 100 palabras
La mejor razon por la que se utilizaría Python en vez de Matlab es
que es un lenguaje de programación relativamente fácil de usar
y fácil de aprender.
Esto es cierto incluso para personas sin conocimientos de
programación.
El hecho es que Python usa una sintaxis extremadamente simple que
usa elementos del inglés natural.
Facilita la escritura, la lectura y el aprendizaje, por otro lado, al eliminar
toda la sintaxis y las líneas de código innecesarias, Python se ha
convertido en un lenguaje muy accesible para aprender a programar
y hacer las cosas rápidamente.
Además, es un lenguaje de programación interpretado, lo
que significa que podemos ejecutar el código de línea a línea
después de escribirlo, sin tener que compilarlo todo como se hace en
otros lenguajes. Python, por otro lado, tiene una amplia selección de
bibliotecas que contienen cierto código.
Este tipo de recursos se pueden utilizar para generar tu propio código
y utilizarlo para desarrollar todo tipo de aplicaciones. Al mismo tiempo,
la flexibilidad de Python le permite trabajar con otros lenguajes
de programación, como Java o C.
Esto lo hace multifuncional, ampliando aún más sus casos de uso.
• ¿Por qué cree que en Ecuador no se ha desarrollado un programa
similar a Python o Matlab (Octave, R)?
El grupo de los software de programación son aquellas herramientas
que utilizan los profesionales como base para la elaboración de
programas.
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Estos lenguajes de programación son imprescindibles en el día a día,
debido a que se trata de las herramientas de trabajo del programador.

Hay distintos tipos que se utilizan dependiendo del momento, y su uso


combinado es lo que permite la creación de software con otros usos.

El problema radica en la falta de apoyo económico, tecnológico y demas


aspectos relacionados a este tipo de herramientas de trabajo del diario
vivir de los programadores o profesionales en el tema.
• ¿Cuál prefiere usar para este curso: PyCharm o Spyder?
Spyder: Ya que este es un potente entorno de desarrollo interactivo para
el lenguaje Python. Posé funciones avanzadas de edición, pruebas
interactivas, depuración e introspección y un entorno informático numérico.
También es un entorno de desarrollo integrado y multiplataforma de código
abierto (IDE) para programación científica en el lenguaje Python.
Spyder es extensible con complementos. Incluye soporte de herramientas
interactivas para la inspección de datos e incorpora controles de calidad
específicos de Python e instrumentos.
• ¿Recomendaría el curso online?. Responder en al menos 200
palabras
Bajo los parámetros que se pueden aprender y poner en práctica yo sí
recomendaría realizar el curso ya que beneficia a los participantes ya que
ahorra tiempo, este lenguaje de programación interpretado es uno de los
principales lenguajes de programación de código abierto para el desarrollo
web y también muy utilizado por los científicos de datos de
aplicaciones grandes y pequeñas.

Python es ampliamente adoptado o aceptado debido


a su legibilidad, estandarización de bibliotecas y soporte para una serie
de paradigmas que incluyen estilos de programación funcional como la
programación imperativa, la programación lógica y la programación
orientada a objetos.

El lenguaje de programación Python es uno de los más populares y se


utiliza en inteligencia artificial, bases de datos, estructuras de datos
y muchos otros campos.
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
• ¿Qué significa el concepto element-wise en el manejo de matrices
en Python?. Poner un ejemplo usando multiplicación matrices de
tamaño 50x50.
Si tenemos dos matrices y queremos dividir cada elemento de la primera
matriz con cada elemento de la segunda matriz, podemos usar la
función numpy.divide(). La función numpy.divide() realiza la división de
elementos en matrices NumPy. La función numpy.divide() toma el array de
dividendos, el array de divisores y el array de salida como argumentos y
almacena los resultados de la división dentro del array de salida.

También podemos usar el operador / para realizar una división por


elementos en matrices NumPy en Python. El operador / es una abreviatura
de la función np.true_divide() en Python. Podemos usar el
operador / para dividir un array por otra matriz y almacenar los resultados
dentro de una tercera matriz.
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
• ¿Se puede pasar de list a array, y viceversa?
Claramente si se puede utilizar, Las listas y los Arrays son dos de los
objetos de colección más fundamentales y más utilizados en Python.
Ambos son mutables, se utilizan para almacenar una colección de
elementos bajo un nombre común, y cada elemento tiene una posición
específica que se puede utilizar para acceder a él.
Sin embargo, existen algunas diferencias notables. Las listas ya están
incorporadas en Python, mientras que, para los Arrays, necesitamos
importar el módulo arrays o el módulo NumPy y debemos declarar los Arrays
antes de usarlas. Los arrays también almacenan datos de manera más
eficiente en la memoria y se utilizan mucho para operaciones matemáticas.
Tenga en cuenta que este método trata a todo el array como un elemento.
Es por eso que cuando lo usamos con un array 2-D, devuelve una lista de
listas.
Para evitar esto, podemos usar el método tolist() con el método flatten() o el
método ravel(), que puede convertir un array N-D en un array 1-D lineal.
Ambos métodos realizan la misma funcionalidad. La diferencia es que el
método ravel() devuelve una vista de referencia del array y afecta el array
original, mientras que el método flatten() funciona en una copia del array.
Debido a esto, la función ravel() se considera más rápida y ocupa menos
memoria.

• ¿La librería Seaborn puede trabajar independiente de Matplotlib?


No puede trabajar independientemente ya que para ejecutar el código tengo
que hacer un llamado a la librería que ocupa matplotlib, y si no se encuentra
instalado por símbolo del sistema en Python marcara un error de código en
la programación y el ploteo no se mostrara.
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Desarrollar un programa para leer un archivo .csv

import pandas as pd
data = {'first_name': ['Sigrid', 'Joe', 'Theodoric','Kennedy', 'Beatrix',
'Olimpia', 'Grange', 'Sallee'],
'last_name': ['Mannock', 'Hinners', 'Rivers', 'Donnell',
'Parlett', 'Guenther', 'Douce', 'Johnstone'],
'age': [27, 31, 36, 53, 48, 36, 40, 34],
'amount_1': [7.17, 1.90, 1.11, 1.41, 6.69, 4.62, 1.01, 4.88],
'amount_2': [8.06, "?", 5.90, "?", "?", 7.48, 4.37, "?"]}
df = pd.DataFrame(data, columns = ['first_name', 'last_name', 'age',
'amount_1', 'amount_2'])
df.to_csv('example.csv')

Desarrollar un programa para leer un archivo excel


Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S

Resultados
Resultados de los dos ejercicios de condicionales
Ejercicio 1
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Ejercicio 2

Resultados de los dos ejercicios de bucles


Ejercicio 1

Ejercicio 2
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Resultados de los dos ejercicios de listas

Ejercicio 1

Ejercicio 2

Resultados de los dos ejercicios de tuplas

Ejercicio 1

Ejercicio 2

Resultados de los dos ejercicios de diccionario

Ejercicio 1
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S

Ejercicio 2

Resultados de los dos ejercicios de diccionario

Ejercicio 1

Ejercicio 2
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Conclusiones
- Se concluye que el interprete interactivo de Python es muy fácil de usar.
Podemos dar nuestros primeros pasos en la programación con el uso de
cualquier comando Python. Basta con escribir el comando en la consola de
Python, uno por uno, y la respuesta es instantánea

- La función enumerate() añade un contador a un objeto iterable. Acepta índices


secuenciales a partir de 0. Y devuelve un IndexError cuando los índices no son
válidos.

- En Java, C y otros lenguajes de tipo estático, debemos especificar el tipo de


datos del valor de retorno de una función, también debemos especificar el tipo
de dato de cada argumento en la función. Por otro lado, Python es un lenguaje
de tipo dinámico, no se proporcionan explícitamente los tipos de datos.
Basándose en el valor asignado, Python realiza un seguimiento internamente
para determinar su tipo.

Recomendaciones

- Si no se tiene el suficiente conocimiento de programación en Python hoy en


día existen múltiples plataformas digitales que entregan cursos gratuitos en los
cuales se puede aprender de una manera fácil y sencilla.

- Muchos códigos a realizar en Python ocupan diferentes librerías a las cuales


se les debe asignar un llamado para que cumplan su función, por eso es que
se debe instalar las librerías correspondientes para que no existe un error en
la compilación del código.

- Se debe saber que Python trabaja con un lenguaje parecido al C, pero no


específicamente el mismo, debemos tomar en cuenta eso ya que puede haber
un error a la hora de correr el programa por la mala interpretación del código,
sabiendo que Python tiene muchas condiciones propias a la hora de
programar.

Bibliografía

(April 12, 2018), "Python - Leer Archivo De Excel - decodigo.com", Decodigo,


https://decodigo.com/python-leer-archivo-de-excel-con-pandas. Accessed on May 13, 2022.

to content, Skip (March 10, 2004), "Download Python", Python,


Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
https://www.python.org/downloads/. Accessed on May 13, 2022.

(March 10, 2002), "Matplotlib – Gráficas. Instalación Simple Con Pip – Fundamentos de
Programación", Fundamentos de Programación,
http://blog.espol.edu.ec/ccpg1001/descargas/matplotlib-graficas-instalar/. Accessed on May
13, 2022.

(August 9, 2017), "Python Seaborn Tutorial For Beginners", DataCamp,


https://www.datacamp.com/tutorial/seaborn-python-tutorial. Accessed on May 13, 2022.

(), "Funciones (2). Python. Bartolomé Sintes Marco. www.mclibre.org", ,


https://www.mclibre.org/consultar/python/lecciones/python-funciones-2.html. Accessed on
May 13, 2022.

Anexo
Ejercicios de Condicionales
Ejercicio 1

numero = int(input("Digite un numero: "))


if numero > 0:
print("El numero es positivo")
elif numero == 0:
print("El numero es 0")
else:
print("El numero es negativo")
print("fin del programa")

Ejercicio 2

edad = int(input("Digite su edad: "))


if 0<edad<100:
print("Edad correcta")
if edad>=18:
print("Usted es mayor de edad, puede pasar")
if edad<18:
print("Usted es menor de edad, no puede ingresar")
else:
print("Edad incorrecta")
print("fin del programa")

Ejercicios de Bucles
Ejercicio 1

import math
numero = int(input("Digite un numero: "))
while numero<0:
print("ERROOR!! --> Digite un numero positivo")
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
numero = int(input("Digite un numero: "))
print(f"\nSu raiz cuadrada es: {(math.sqrt(numero)):.2f}")

Ejercicio 2

coleccion = "Alexander"
for n in coleccion:
print(f"{n}")

Ejercicios de Listas
Ejercicio 1

smartphones = ['Iphone','Samsung','Xiaomi','Huawei','Motorola']
print(smartphones[0])
print(smartphones[4])
print(smartphones[1])
print(smartphones[3])

Ejercicio 2

jugadores = ['Btalla','Driusi','Alario','Mora','Auzqui','Rojas','Ponzio']
print(jugadores)
len(jugadores)
print(jugadores[0])
print(jugadores[6])
print(jugadores[-1])
print(jugadores[3])

Ejercicios de Tuplas
Ejercicio 1

vocales = 'a', 'e', 'i', 'o', 'u'


print(vocales[2:3])
print(vocales[2:4])
print(vocales[:])
print(vocales[1:])
print(vocales[:3])

Ejercicio 2

pares = 2, 4, 6, 8, 10, 12, 14


print(pares[::2])
print(pares[1:5:2])
print(pares[1:6:3])

Ejercicios de Diccionarios
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
Ejercicio 1

futbolistas = {
1 : "Casillas", 15 : "Ramos",
3 : "Pique", 5 : "Puyol",
11 : "Capdevila", 14 : "Xabi Alonso",
16 : "Busquets", 8 : "Xavi Hernandez",
18 : "Pedrito", 6 : "Iniesta",
7 : "Villa"
}
for k,v in futbolistas.items():
print("%s -> %s" %(k,v))

Ejercicio 2

diccionario = {'nombre' : 'Carlos', 'edad' : 22, 'cursos':


['Python','Django','JavaScript'] }
print(diccionario['nombre']) #Carlos
print(diccionario['edad'])#22
print(diccionario['cursos'])#['Python','Django','JavaScript']
print(diccionario['cursos'][0])#Python
print(diccionario['cursos'][1])#Django
print(diccionario['cursos'][2])#JavaScript

Ejercicios de Funciones
Ejercicio 1

# función sin parámetros o retorno de valores


def diHola():
print("Hello!")

diHola() # llamada a la función, 'Hello!' se muestra en la consola

# función con un parámetro


def holaConNombre(name):
print("Hello " + name + "!")

holaConNombre("Ada") # llamada a la función, 'Hello Ada!' se muestra en


la consola

# función con múltiples parámetros con una sentencia de retorno


def multiplica(val1, val2):
return val1 * val2
multiplica(3, 5) # muestra 15 en la consola

Ejercicio 2

def escribe_media():
media = (a + b) / 2
print(f"La media de {a} y {b} es: {media}")
Departamento de Eléctrica y Electrónica
Cursos AM, CI, PE, PDS, S&S
return

a = 3
b = 5
escribe_media()
print("Programa terminado")

También podría gustarte