Unidad 4 Ejercicios - Ruiz Sandoval
13 de abril de 2022
Juan Carlos Ruiz Sandoval
No. Control: 20151325
Ejercicio 1
Este
programa se encarga de abrir un archivo, leer su contenido e imprimir su
contenido en la terminal.
archivo=open("Prueba.txt","r")
contenido=archivo.read()
print(contenido)
archivo.close()
Ejercicio 2
La función
del programa es abrir un archivo, leer la primera línea e imprimir en pantalla
su contenido.
ari=open("Prueba.txt","r")
linea=ari.readline()
ari.close()
print(linea)
Ejercicio 3
Este
programa se encarga de abrir un archivo y mediante un ciclo y readlines, leer
cada una de las líneas e imprimir en pantalla en contenido de cada una de
ellas.
pal=["gato","perro","chonchito"]
for p in pal:
print(p)
arch=open("Prueba.txt","r")
for linea in arch.readlines():
print(linea,
end='')
arch.close()
Ejercicio 4
Este
programa explica y demuestra el funcionamiento de name, mode y encoding para ello abre un
archivo y en base a él se encarga de imprimir el modo en el que se abrió, el
nombre y como esta codificado.
arch=open("Prueba.txt","r+")
contnido=arch.read()
nombre=arch.name
modo=arch.mode
cod=arch.encoding
arch.close()
if
arch.closed:
print("Cerrado
correctamente")
else:
print("Archivo abierto")
print("Nombre
del archivo: ",nombre,"Modo: ", modo)
print("Que
sera_ ", cod)
Ejercicio 5
En
este programa se muestra el funcionamiento de la función with open, esta de
encarga de abrir el archivo y cerrarlo automáticamente de esta forma no tenemos
que preocuparnos por dejar abierto un archivo.
with open("Prueba.txt","r") as
arch:
contenido=arch.read()
print(contenido)
print(arch.closed)
Ejercicio
6
En
este programa se usa el método seek, el método readline y el método tell.
Primero abre el archivo con un with open posteriormente con el método seek se
posiciona en el número de carácter seleccionado, y con el método tell se
posiciona al final.
with open("Prueba.txt","r") as
arch:
cuenta=arch.seek(7)
print(cuenta)
linea=arch.readline()
print(linea)
donde=arch.tell()
print(donde)
print(arch.closed)
Ejercicio 7
Este programa
sirve para agregar nuevas líneas a un archivo para ello primero pregunta cual
se quiere modificar, lo abre, se posiciona al final, pregunta que se quiere
agregar y lo escribe.
a=input("Que
poema quieres modificar: ")
with open(a+".txt","r+") as a:
todo=a.read()
fina=a.tell()
b=input(str("Que quieres
agregar: \n"))
a.write(b)
a.seek(fina)
print(a.closed)
Ejercicio 8
Este
programa hace uso de la librería glob, con ella podemos encontrar todos los
archivos que cumplan los parámetros dados y por medio de un for imprimir los
nombres.
import glob
#print(help(glob))
lista=glob.glob("*.py")
# directorio actual
for i in lista:
print(i)
Ejercicio 9
En
este programa se usa la librería os para mostrar todos los archivos dentro de
una carpeta independientemente de sus características.
import
os
ar=os.listdir('C:/Users/Juan
Carlos/Desktop/Visual/Unidad 4')
print(ar)
for i in ar:
print(i)
print(os.getcwd())
Ejercicio 10
Este
programa se encarga de realizar un poemario con diferentes opciones entre las
que se encuentran: crea un archivo, leer el contenido de un archivo, borrar un
archivo y agregar nuevas líneas a un archivo para ello se usan métodos de las
librerías glob, time, colorama y os.
import os
import glob
from colorama import init, Fore, Back, Style
import time
#time.sleep(3)
#poemario
#os.system('cls') #limpiar cmd
s=1
while(s):
init()
print(Fore.RED+Style.BRIGHT+"")
print("Poemario")
print("{}\t{}".format(1,"Crear
poema nuevo"))
print("{}\t{}".format(2,"Ver
poemas existente"))
print("{}\t{}".format(3,"Borrar
poema"))
print("{}\t{}".format(4,"Agregar
lineas al poema existen"))
print("{}\t{}".format(5,"Salir"))
op=int(input("Dame
la opcion: "))
if
op==1:
os.system('cls')
nomarch=input("Nombre
del archivo poema nuevo: ")
a=open(nomarch+'.poe',"a")
a.close()
os.system('cls')
if
op==2:
os.system('cls')
init()
print(Fore.CYAN+Style.BRIGHT+"")
lista=glob.glob("*.txt")
for
i in lista:
print(i)
j=input("Que poema
quieres ver: ")
try:
p=open(j+".txt","r")
cont=p.read()
print(cont)
a=input("Presiona
enter para volver...")
p.close()
except:
f=input("No
existe...")
os.system('cls')
if
op==3:
init()
os.system('cls')
print(Fore.BLUE+Style.BRIGHT+"Poemas
disponibles: ")
lista=glob.glob("*.poe")
# directorio actual
for i in lista:
print(i)
try:
no=input("Que
poema quieres borrar: ")
p=open(no+'.poe','r')
con=p.read()
print(con)
pr=input("Presiona
para borrar...")
p.close()
except:
a=input("No
existe...")
try:
os.remove(no+'.poe')
except:
print("No
existe")
b=open(no+'.poe','a')
b.close()
os.system('cls')
if
op==4:
os.system('cls')
init()
print(Fore.MAGENTA+Style.BRIGHT+"Poemas
disponibles: ")
lista=glob.glob("*.txt")
# directorio actual
for i in lista:
print(i)
try:
a=input("Que
poema quieres modificar: ")
lin=[]
with
open(a+".txt","r+") as a:
todo=a.read()
fina=a.tell()
con=int(input("Cuantas
lineas quieres agregar: "))
for y in range(con):
h=str(input("Linea
{}: ".format(y+1)))
lin.append(h)
for
f in lin:
a.write("\n"+f)
a.seek(fina)
except:
r=input("El
poema no existe...")
os.system('cls')
if
op==5:
s=0
Ejercicio 11
Este
programa tiene la finalidad de mostrar cómo se declara una función.
#funcion
1
def
saludo():
#como comprender una funcion
print("Dentro de saludo")
#palabra
reservada identificador o nombre de funcion parametros
#o
argumentos sintaxis los dos puntos
#dos
lineas en blanci antes de llamar la funcion
#la
funcion se estabkece antes de mandarka llamar
saludo()
#llamada de la función
Ejercicio 12
Este
programa muestra los diferentes erros que se pueden dar al declarar o utilizar
las funciones.
'''
def
funcion ():
print("Dentro de funcion")
print("otra linea")
funcion()
'''
'''
def
cuadrado():
print(x*x)
cuadrado(4)
'''
'''
def
cuadrado(y):
z=y*y
#error
por falta de return
print(cuadrado(4))
'''
Ejercicio 13
El
objetivo de este programa es ver diferentes usos que se le puede dar a las
funciones como hacer sumas, multiplicaciones, restas, entre otras varias.
'''
def
cuadrado(y):
z=y*y
return z
print(cuadrado(8))
'''
def
suma(a,b):
r=a+b
print(r)
suma(5,3)
def
suma(a,b=6):
r=a+b
print(r)
suma(5)
def suma(a=1,b=5):
r=a+b
print(r)
suma()
def suma3(*args):
r=0
print(args)
for i
in args:
print("i:
", i)
r=r+i
print(r)
Ejercicio 14
La
idea del programa es realizar la serie de Fibonacci mediante funciones y un
rango estipulado, para ello se hace de dos formas, una por medio de una lista y
otra por medio de sumas, dando ambas el mismo resultado.
def fib(n):
a,
b=0, 1
while
a<n:
print(a,
end=' ')
a,
b=b, a+b
print()
def fib2(n):
result=[]
a,
b=0, 1
while
a<n:
result.append(a)
a,
b=b, a+b
return
result
fib(2000)
f=fib2(3000)
print(f)
Ejercicio 15
La
idea del programa es ver cómo pueden mandarse los argumentos de un diccionario
a una función, para ellos al momento de llamar a la función se colocan dos * y
posteriormente el nombre del diccionario.
def
pollo(tension, estado='rostizado', accion='explotar'):
print('este pollo no va a ', accion,
end=' ')
print('si le aplicas', tension,
'voltios.', end=' ')
print('Esta', estado, "!")
d={"tension":"Cinco
mil",
"estado":"demacrado","accion":"volar"}
pollo(**d)
pollo("Diez
mil ")
pollo("Cien
mil", "muertado", "caminar")
Ejercicio 16
Mediante
la librería matplotlib y la librería numpy; este programa se encarga de
graficar una pendiente dentro de un rango establecido que va desde el -1 al 1.
import numpy as np
import matplotlib.pylab as plt
x=np.linspace(-1,1,50)
#print(x)
y1=2*x
plt.plot(x,y1)
plt.show()
Ejercicio 17
Este
programa se encarga de graficar tres funciones en una sola grafica mediante el
método plot de la librería matplotlib, además de ello cambia tanto el color
como el marcador de cada una de ellas.
import numpy as np
import matplotlib.pylab as plt
x=np.linspace(-1,1,50)
#print(x)
y1=2*x
y2=2*(x)**2+1
y3=2*(x)**3-1
plt.plot(x,y1,
color='r', lw=3, ls='--')
plt.plot(x,y2, color='b', lw=1, marker='s')
plt.plot(x,y3, color='k', marker='o', ls='None')
plt.xlabel('Abscisas', fontsize=20)
plt.ylabel('Ordenadas', fontsize=15)
plt.title('Primer')
plt.show()
Ejercicio 18
Este
programa muestra cómo se pueden agregar indicadores a las gráficas mediante el
método annotate, en él se escribe el nombre que lleva el indicador, el tamaño y
la posición en donde lo queremos, además de esto se usó los métodos xlabel y
ylabel para darle nombre a los ejes.
import numpy as np
import matplotlib.pylab as plt
x =
np.linspace(-1, 1, 20)
y1 =
2*x
y2 =
2*(x)**2 + 1
y3 =
2*(x)**3 - 2
plt.figure(num='MiPrimerGrafico',
figsize=(5,7))
tam=20
plt.rc('xtick',labelsize=tam);
plt.rc('ytick',labelsize=tam)
plt.plot(x, y1, color='r', lw=6, ls='--')
plt.annotate('y=2x', (0.3, 2*0.3), (0.4, -0.3),
fontsize=tam, arrowprops=dict(facecolor='r', shrink=0.05, width=2))
plt.plot(x, y2, color='b', lw=1, marker = 's')
plt.annotate('y=2x^2 + 1', (0.0, 2*0.0**2+1), (-0.5,
2.0), fontsize=tam, arrowprops=dict(facecolor='b', shrink=0.05, width=2))
plt.plot(x, y3, color='k', marker='o', ls='None')
plt.annotate('y=2x^3 - 2', (0.3, 2*0.3**3-2), (-0.2,
-3.0), fontsize=tam, arrowprops=dict(facecolor='k', shrink=0.05, width=2))
plt.grid('on')
plt.xlabel('Abcisas', fontsize=tam)
plt.ylabel('Ordenadas',
fontsize=tam)
plt.title('Primer', fontsize=tam)
plt.show()
Ejercicio 19
Este programa se encarga de graficar la función
seno haciendo uso primero para establecer las dimensiones del seno y posteriormente
graficando con el método plot.
import
matplotlib.pyplot as plt
import numpy as np
a=np.linspace(0,20,50)
b=np.sin(a)
plt.plot(a,b, 'k--',
linewidth=2)
plt.show()
Ejercicio 20
Este
programa se encarga de graficar la funcio0n seno doble vez, pero con diferente
rangos y diferentes colores y marcadores, además de que sirve para ver el
funcionamiento del método legend que sirve para agregar etiquetas a las gráficas
dependiendo de las funciones.
import matplotlib.pyplot as plt
import numpy as np
plt.figure('grafico
sin')
a=np.linspace(0,20,50)
b=np.sin(a)
c=plt.plot(a,b,'c-3', linewidth=2)
c=plt.plot(a+0.2,b-1,'r-o', linewidth=2)
plt.xlabel("Tiempo(s)", fontsize=20)
plt.ylabel(r"$y (\mu m) $", fontsize=20,
color='blue')
plt.text(5,7,"Mas texto", fontsize=12)
plt.title("Velocidad (m\s)", fontsize=20)
plt.legend(('Etiqueta1',
'Etiqueta2','Etiqueta3'),
loc='upper left')
plt.plot(a,b,'k--', linewidth=2)
plt.grid(True)
plt.savefig('tabla.png', dpi=300)
plt.show()
Ejercicio 21
La
idea del programa es hacer uso del método subplot para generar las cantidades
de graficas que deseemos en una sola corrida para esto se graficó la función
seno de cuatro formas distintas.
import matplotlib.pyplot as plt
import numpy as np
a=np.linspace(0,20,50)
b=np.sin(a)
plt.figure()
#plot 1
plt.subplot(2,2,1)
plt.plot(a,b,'r')
#plot 2
plt.subplot(2,2,2)
plt.plot(a+2,b*25,'g')
#plot 3
plt.subplot(2,2,3)
plt.plot(b,a,'b')
#plot 4
plt.subplot(2,2,4)
plt.plot(a,b,'k')
plt.show()
Ejercicio 22
Este
programa grafica una gama de colores mediante el método imshow además agrega
una barra que muestra los colores de la gráfica mediante el método colorbar.
import numpy as np
import matplotlib.pyplot as plt
plt.figure()
x=np.arange(-5,5,0.01)
y=np.arange(-5,5,0.01)
x, y=np.meshgrid(x,y)
fxy=np.cos(x**3+y**2)
plt.imshow(fxy)
plt.colorbar()
plt.show()
Ejercicio 23
El
siguiente programa se encarga generar una gráfica de barras mediante el método
bar de la librería matplotlib, la gráfica es de la posición de los quipos de
futbol de los países.
import numpy as np
import matplotlib.pyplot as plt
paises=("Portugal",
"Mexico","Brazil","Qatar", "Canada")
posicion_y=np.arange(len(paises))
unidades=(8,
9, 7, 6, 5)
plt.bar(posicion_y,
unidades, align='center')
plt.xticks(posicion_y,
paises)
plt.ylabel("puntos")
plt.title("Tabla
de posiciones")
plt.show()
#plt.xlabel
Ejercicio 24
Este
programa se encarga de realizar lo que se conoce como grafica de pastel de la
impresión de colores mediante el método pie, añadiendo un título que usa bbox
para encerrarlo dentro de una caja de color.
import numpy as np
import matplotlib.pyplot as plt
impr=["b/n","color","duplez","A3"]
vol=[25,31,46,10]
expl=(0,0.50,0,0)
plt.pie(vol,explode=expl,labels=impr,autopct='%1.1f%%',
shadow=True)
plt.title("Impresion",
bbox={"facecolor":"0.8","pad":5})
plt.show()
Ejercicio 25
Este
programa se encarga de realizar una grafica con varias barras haciendo uso del método
bar de la librería matplotlib.
import
matplotlib.pyplot as plt
import
numpy as np
datos =
[[1, 2, 3, 4], [3, 5, 3, 5], [8, 6, 4, 2]]
X =
np.arange(4)
plt.bar(X +
0.00, datos[0], color = "b", width = 0.25)
plt.bar(X +
0.25, datos[1], color = "g", width = 0.25)
plt.bar(X +
0.50, datos[2], color = "r", width = 0.25)
plt.xticks(X+0.38,
["A","B","C","D"])
plt.show()
Comentarios
Publicar un comentario