Está en la página 1de 32

Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

OBJETIVOS DE LABORATORIO
(9) APLICAR LAS BASES DEL LENGUAJE DE PROGRAMACIÓN PYTHON EN
EL AMBIENTE DE IPYTHON NOTEBOOK.
(10) APLICAR LAS BASES DEL LENGUAJE DE PROGRAMACIÓN PYTHON EN
EL AMBIENTE DE IPYTHON NOTEBOOK.
PRÁCTICA 9
ACTIVIDAD 1
Inicialización de Variables

Figura 1.1 Fragmento de Código Inicialización de Variables

Figura 1.2 Fragmento de la Ejecución Exitosa Inicialización de Variables


En este código lo que hace es mostrarnos los pasos básicos de la programación la
cuál es la creación de variables junto con su asignación de valores (x=10), a
diferencia de C aquí no tenemos que especificar/declarar al inicio del código de qué
origen será la variable a utilizar (entera, flotante, carácter, arreglo,); por otra parte
se crean cadenas de caracteres, para ello igualamos una variable cualquiera a la
cadena de caracteres que deseamos guardar, dicha cadena debe estar entre
comillas simpes o comillas dobles (cadena=’Hola Mundo’, cadena2=”Hola
Mundo”), la diferencia de las comillas es que si necesitamos usar un enunciado o
palabra con apostrofe tendremos problemas en la ejecución del programa. Otra
cosa que realiza el código es que podemos ver el tipo de variable con la que
estamos trabajando, pero para ello ya debe existir la variable de lo contrario marcará
error, mediante type(variable); otra cosa que realiza el código es que podemos
cambiar el tipo de una variable durante la ejecución del programa con solamente
igualar la variable a un valor (cadena=’Hola Mundo’ -> cadena=10). Para terminar
nos indica que si trabajaremos con valores constantes estos, los nombres de las
variables, deben estar escritas en mayúsculas, y para imprimirlos no es necesario
escribir entre comillas dobles algún identificador, solamente poner el nombre de la
variable dentro del print print(cadena).
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

Dicho código/programa no recibe ningún parámetro de entrada y sólo imprime


cadenas de caracteres o valores numéricos. Se le agregó la biblioteca os mediante
from os import* (lo que podemos traducir como “de la biblioteca os importar todas
las funciones) para hacer uso de las funciones del sistema (cls y pause).
ACTIVIDAD 2
Cadenas de caracteres

Figura 2.1 Fragmento de Código Cadenas de caracteres

Figura 2.2 Ejecución Exitosa Cadenas de caracteres


Lo que hace el código es mostrarnos algunas de las operaciones que podemos
realizar con las cadenas de caracteres tales como sumar/juntar/concatenar
enunciados mediante el operador matemáticos suma e igualación, sin embargo si
la primera cadena de caracteres al final no tiene un espacio en blanco o la segunda
cadena de caracteres no tiene un espacio al inicio cuando concatenemos mediante
el operador suma nos quedarán los enunciados juntos, otra forma para resolver este
problema (el de los enunciados juntos sin espacio) el código lo muestra más abajo
el cuál es además de sumar las dos cadenas de caracteres deseadas es sumarles
en medio un espacio en blanco encerrado en comillas (cf=cadena1+’ ‘+cadena2);
por otro lado podemos sumar valores enteros/flotantes con las cadenas, para ello al
momento de hacer la suma debemos usar la palabra reservada str para convertir
dicho número en carácter (cf=cadena1+’ ‘+cadena2+str(numero)).
Otras dos formas que el código nos muestra para juntar cadenas es el uso de
paréntesis y de la palabra reservada format (cf=”{} {}”.format(cadena1,cadena2))
lo que significa que format lo que hace es convertir sus parámetros en cadenas de
caracteres y luego las con las llaves dentro de las comillas doble en el orden de los
parámetros de format (si queremos concatenar varias variables, tales como el
ejemplo, se deben separar por coma); la última forma es prácticamente igual sólo
que esta vez colocamos números dentro de las llaves “{}” lo cual significa que en
ese lugar se colocará la información de la variable n del format, igual que en C el
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

lenguaje Python trabaja con índices iniciados en 0 por lo que si una de las llaves
tiene el número 0 se colocará la primera variable dentro del format.
Este código no recibe ningún parámetro de entrada y lo único que devuelve son
impresiones de pantalla con el valor de las respectivas variables trabajadas. Se le
agregó la biblioteca os mediante from os import* (lo que podemos traducir como
“de la biblioteca os importar todas las funciones) para hacer uso de las funciones
del sistema (cls y pause).
ACTIVIDAD 3
Operadores y booleanos

Figura 3.1 Fragmento de código Operadores y booleanos

Figura 3.2 Fragmento de la Ejecución Exitosa Operadores y booleanos


Lo que hace este código es imprimir los resultados de algunas operaciones
matemáticas (suma, resta, multiplicación, división, módulo, potencia y operaciones
anidadas), a diferencia de C que dentro del printf debíamos colocar “%i” para
aclarar el tipo de variable que se imprimirá en Python no es necesario eso,
simplemente debemos poner la palabra reservada print y dentro de sus paréntesis
la operación para así imprimir el resultado de esta, sin embargo, las operaciones
matemáticas trabajan de la misma manera que C.
En la siguiente parte del código trabajaremos con impresiones booleanas (True o
False), esto se hace también mediante los print pero dentro de los paréntesis lo que
se hace es escribir alguna operación respecto a igualación/mayores/menores
(print(5<7) o print(5>7)) ya el mismo código hace la comparación para saber si
realmente se cumple lo que hay dentro de los paréntesis del print, de ser así
imprimirá True o de lo contrario imprime False.
Este código no recibe ningún parámetro de entrada y lo único que se espera son
impresiones de pantalla. Se le agregó la biblioteca os mediante from os import* (lo
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

que podemos traducir como “de la biblioteca os importar todas las funciones) para
hacer uso de las funciones del sistema (cls y pause).
ACTIVIDAD 4
Listas

Figura 4.1 Fragmento de Código Listas

Figura 4.2 Fragmento de la Ejecución Exitosa Listas


Lo que hace este código es mostrarnos la forma en que podemos crear una lista en
Python, lo que se hace es igualar una variable a un conjunto de
números/letras/cadenas de caracteres los cuáles estarán encerrados (todo el
conjunto) entre corchetes y separados entre ellos por comas, esto es equivalente a
realizar un arreglo/vector/array en C sin embargo en Python no debemos hacer el
llenado de un valor a la vez además de que no necesitamos declarar el arreglo junto
con su tamaño; en seguida se manda a imprimir dicho arreglo y podemos hacerlo
de la siguiente forma:
a) Si dentro del print colocamos el nombre del arreglo/variable de la lista
mandará a imprimir todos los valores tal como cuando los ingresamos (dentro
de corchetes y cada valor separado por coma)
b) Podemos imprimir un valor a la vez mediante los índices, cómo se dijo
anteriormente, Python trabaja con índices de la misma forma que C (la
posición 0 representa el primer valor del arreglo, la posición 1 el segundo
valor, etc.)
También podemos hacer Listas anidadas (lo que es equivalente en C a un arreglo
de arreglos) para ello lo que hacemos es crear una lista dentro de una lista con los
mismos principios de la lista normal (lista=[[1,2,3],[4,5,6],[7,8,9]]), ahora cuando
mandamos a imprimir la variable lista imprimirá los valores tal y como se hizo la
asignación pero si mandamos a imprimir de la siguiente forma print(lista[0]) lo que
hace es imprimir los números de los primeros corchetes ([1, 2, 3]) y si queremos
imprimir un valor específico de la lista anidada debemos trabajar los índices como
si fuera un arreglo de dos dimensiones en C print(lista[0][1]) lo que nos da en
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

impresión de pantalla el número 2. Además podemos modificar un valor de la lista


anidada haciendo uso de los índices tal y como se explicó lista[0][1]=10 lo que
significa que donde había un 2 ahora se encontrará un 10
No recibe ningún parámetro de entrada y lo que se espera son impresiones de
pantalla referentes a las listas trabajadas en el código. Se le agregó la biblioteca os
mediante from os import* (lo que podemos traducir como “de la biblioteca os
importar todas las funciones) para hacer uso de las funciones del sistema (cls y
pause).
ACTIVIDAD 5
Tuplas

Figura 5.1 Fragmento de Código Tuplas

Figura 5.2 Fragmento de la Ejecución Exitosa Tuplas


En este código lo que se hace es la declaración y asignación de valores de una
Tupla, para ser específicos una Tupla funciona prácticamente igual que una Lista,
la única diferencia es que envés de que los valores estén contenidos en corchetes
están dentro de paréntesis y por otro lado una Tupla es inalterable/inmutable lo que
significa que si queremos modificar un valor de la Tupla la ejecución nos marcará
error porque esta operación no se puede hacer, tampoco podemos eliminar valores
o agregar. Así que la funcionalidad de las Tuplas son para tener un “listado” de
objetos/cosas/palabras/números que queremos que permanezcan constantes.
Para la impresión de la Tupla podemos hacerlo igual que la de una lista:
a) Para imprimir toda la Tupla ponemos print(nombre_tupla) e imprimirá todos
los valores encerrados entre paréntesis y separados por comas (1, 2, 3, 4…)
b) Para imprimir un valor de la Tupla hacemos uso de los índices igual que las
listas print(nombre_tupla[0]) lo que nos da 1 (por ejemplo).
También podemos crear Tuplas anidadas y, la creación de estas, su impresión
siguen los mismos principios que la de las listas. Otra cosa que podemos hacer con
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

las Tuplas es ponerle nombre a una tupla “general”, esto significa que podemos
crear una “variable” de tipo tupla (tal como lo hacíamos con las estructuras en C que
creábamos variables de un tipo de estructura) para ello mandamos importamos la
función namedtupla de la biblioteca collections una vez hecho eso lo que hacemos
es a la variable (en este caso planeta) la igualamos a la función
namedtupla(‘planeta’, [‘nombre’, ‘numero’]), el primer argumento se refiere al
nombre que tendrá la tupla mientras que el segundo es el nombre del planeta que
vamos a almacenar (una variable) junto con su respetivo número (otra variable de
la Tupla). Después lo que hacemos es igualar una variable a planeta con el nombre
del planeta y su número planeta1=planeta(‘Mercurio’, 1) lo que significa que la
variable planeta1 tiene las características de la tupla planeta y contendrá el nombre
del planeta Mercurio junto con su posición en el sistema solar.
Para imprimir los valores lo podemos hacer de dos formas:
a) print(planeta1.nombre, planeta1.numero) esto es equivalente, en C, a
acceder a las partes de una estructura mediante el operador punto, con esta
forma imprime el nombre y seguido el número del planeta.
b) Print(planeta2[0], planeta2[1]) Significa que imprimirá primero el valor en la
posición 0 (el nombre del planeta) de la tupla y luego el valor de la posición
1 (el número) de la Tupla
Por último si queremos ver (después de haber creado una tupla mediante
named.tupla) las partes de la tupla o sea el tipo de contenido que tendrá hacemos
print(‘{}’.format(planet._fields)) y con esto en el paréntesis imprimirá los campos
de la Tupla.
Este código no espera ningún parámetro de entrada y lo que espera que regrese
son impresiones de pantalla de las Tuplas creadas. Se le agregó la biblioteca os
mediante from os import* (lo que podemos traducir como “de la biblioteca os
importar todas las funciones) para hacer uso de las funciones del sistema (cls y
pause).
ACTIVIDAD 6
Diccionarios

Figura 6.1 Fragmento de Código Diccionarios


Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

Figura 6.2 Fragmento de la Ejecución Exitosa Diccionarios


Podemos decir que un diccionario sirve de la misma manera que una lista, sólo
cambian tres cosas:
a) Los valores del diccionario se almacenan entre llaves {}.
b) Cada posición tiene dos datos:
a. El primero funge como identificador(keys).
b. El segundo desempeña el papel de la información del identificador.
Para asociar uno con otro lo que se hace es poner primero el identificador
luego dos puntos y seguido la información.
c) Para acceder a la información del diccionario (ya sea para modificarlo o
imprimirlo) ya no se usarán índices numéricos, sino que se usará un índice
de caracteres o mejor dicho el identificador. Si queremos imprimir (respecto
a la figura 6.2) el valor del hidrógeno debemos poner
print(elementos[‘hidrogeno’]), si queremos modificar su valor debemos
hacerlo de la siguiente forma elementos[‘hidrogeno’]=2. Cabe destacar que
sólo se puede modificar la información del identificador pero no al
identificador.
El código lo que hace es crear varios diccionarios, el primero de 3 elementos de
la tabla periódica con sus respectivas posiciones en la misma; al igual que las
listas y las tuplas podemos imprimir todo el diccionario solamente usando
print(elementos) pero si queremos imprimir un valor en específico debemos
hacerlo mediante el identificador (tal como se explico en el inciso “c”).
También se pueden crear Diccionarios anidados, es lo que hace el código
después de haber creado un diccionario normal, sin especificar en su
declaración su contenido. Para ello hace elementos2={} y a continuación crea
dos identificadores (H y He) y a cada uno le asigna otro diccionario; al momento
de imprimir este diccionario (elementos2) lo que hace es imprimir cada llave
junto con su respectivo diccionario (el cuál es la información de la key); si
queremos imprimir la información de un identificador (tal como se explica en el
inciso “c”) debemos poner print(elementos2[‘H’]), pero si queremos imprimir un
dato especifico de esa key debemos poner como segundo índice el nombre del
segundo identificador al que nos vamos a referir print(elementos2[‘H’][‘name]).
Una característica que comparten los diccionarios con las listas es que podemos
modificar la información de las llaves (tanto las de primer nivel, aquellos
diccionarios normales, como los de segundo nivel, diccionarios anidados)
mediante los índices como lo hemos venido trabajando
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

elementos2[‘H’][‘weight’]=4.30. Por otro lado podemos agregar valores a las


llaves mediante la función update y entre paréntesis la información nueva a
agregar elementos2[‘H’].update({‘gas noble’:True}), se intentó hacerlo con un
diccionario normal sin éxito por lo que se concluyó que sólo sirve para
diccionarios anidados.
Para concluir podemos ver todos los elementos del diccionario mediante la
función ítems (print(elementos2.items())) y al imprimir mandará la leyenda
dict_items seguido del contenido encerrado en paréntesis y corchetes ([])
dentro de esto aparecerá cada identificador, separado por una coma de su
información, separados por paréntesis y llaves. Si sólo queremos imprimir los
identificadores usamos print(elementos2.keys()) lo que imprimirá la leyenda
dict_keys y encerrados entre paréntesis y corchetes ([]), separados por comas,
aparecerán los identificadores.
Para la ejecución del código no se espera ningún valor de entrada pero como salida
aparecerán impresiones de pantalla de la información de los diccionarios creados.
Se le agregó la biblioteca os mediante from os import* (lo que podemos traducir
como “de la biblioteca os importar todas las funciones) para hacer uso de las
funciones del sistema (cls y pause).
ACTIVDIDAD 7
Funciones

Figura 7.1 Fragmento de Código Funciones

Figura 7.2 Ejecución Exitosa Funciones


A diferencia de C, Python no debe declarar al inicio (o en una biblioteca) las
funciones a utilizar junto con sus parámetros de entrada, ni tampoco debe
especificar si es una función entera, flotante, vacía o de otra índole.
Para crear una función debemos hacer uso de la palabra reservada def seguido el
nombre de la función y entre paréntesis una referencia del valor de entrada (si no
hay ninguno se deja en blanco) a la función, dicha referencia sólo es un “ejemplo”
de lo que se espera tener. Ya dentro de la función se definen las instrucciones a
ejecutar. La primera función del programa lo único que hace es concatenar dos
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

cadenas de caracteres e imprimirlas (no devuelve ningún valor), después de la


declaración de la función se manda a llamar mediante imprimir_nombre(“JJ”) lo
que nos da como resultado la impresión de “hola JJ”. La segunda función lo que
hace es regresar el número de entrada (x) elevado al cuadrado, para ver que
funciona fuera de la función a x se le establece un valor de 5, y mediante print(‘El
cuadrado de {} es {}’.format(x,cuadrado(x))) veremos el resultado en pantalla.
Como podemos ver en la tercera función, a diferencia de C, regresa más de un valor
la función, para ello debemos igualar el total de variables que deseamos obtener a
la función (si la función regresa 3 valores y con los tres deseamos trabajar,
igualamos tres variables a la función var1,var2,var3=varios(x)) y dichos valores
retorno se almacenan en el orden que “salen” (la variable 1 almacena el 1er valor
de retorno, la variable 2 el 2do valor de retorno, etc.) y para imprimirlos solamente
hacemos uso del print con las llaves {} y el format (tal como se ha estado trabajando
en códigos anteriores). Por otro lado si sólo queremos almacenar cierta cantidad de
valores de retorno de una función (despreciando el 2do o el 4to valor de retorno)
debemos seguir las instrucciones dichas anteriormente sólo que la posición que
deseamos ignorar escribimos un guion bajo var1,_,val3=varios(x) (esto quiere
decir que el 2do valor de retorno se va a despreciar).
Por último si a una función que tiene un valor de entrada por defecto (tal como la
última función), al momento de llamarla no especificamos el valor de entrada, ésta
regresará el resultado con su valor establecido, pero si sí le ponemos valor de
entrada cuando la llamamos regresa el resultado con el valor que nosotros le dimos.
Este código no espera ningún valor de entrada, pero en la salida esperamos ver
impresiones de pantalla con los print especificados en el código. Se le agregó la
biblioteca os mediante from os import* (lo que podemos traducir como “de la
biblioteca os importar todas las funciones) para hacer uso de las funciones del
sistema (cls y pause).
ACTIVIDAD 8
Variables Globales

Figura 8.1 Fragmento de Código Variables Globales


Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

Figura 8.2 Ejecución Exitosa Variables Globales


Lo primero que se hace es declarar una variable Global vg=’Global’ con la cuál se
estará trabajando en las diferentes funciones a utilizar. La primera función, al igual
que el resto de las otras funciones, no se espera ningún parámetro de entrada y lo
que hará es imprimir la información de la variable global print(vg), cuando
mandamos a llamar la función nos da como resultado en pantalla Global y luego si
imprimimos la variable fuera de la función tendremos el mismo resultado Global (lo
que significa que la variable no se ha modificado).
Dentro de la segunda función se crea una variable (con el mismo nombre de la
variable global) la cual tiene como información Local, después se manda a imprimir
dicha variable mediante print(vg) dándonos como resultado Local, después de esa
función mandamos a imprimir print(vg) lo que nos da como resultado Global, esto
porque dentro de la segunda función la variable con el mismo nombre que la global
sólo es una variable local por lo que no modifica el valor dela variable global.
Se creó una tercera función (la cuál aparece comentada con comillas triples “”” “””)
la cuál al inicio manda a imprimir la variable vg, después a la variable impresa se le
asigna otro valor vg=’Local’ para volverla imprimir dicha variable print(vg). Si
mandamos a llamar esta tercera función nos arroja un error porque lo que hace la
función en su primera instrucción es imprimir una variable local a la cual no se le ha
asignado ningún valor.
Para terminar se creó una cuarta función la cuál, mediante la palabra reservada
global, manda a llamar la variable global vg para imprimirla a continuación
dándonos Global, después a esa variable se le asigna un nuevo valor vg=’Local’
la cual nuevamente imprimiremos obteniendo en pantalla Local. Si imprimimos la
variable global después de ejecutar la cuarta función tenemos que ya no tiene el
valor de Global sino de Local; esto porque dentro de la cuarta función se modificó
su valor ya que estuvimos trabajando directamente con la variable por medio de
global vg.
Esta función no espera ningún valor de entrada para poder trabajar sin embargo
esperamos como impresiones de pantalla las cadenas de caracteres Global y/o
Local. Se le agregó la biblioteca os mediante from os import* (lo que podemos
traducir como “de la biblioteca os importar todas las funciones) para hacer uso de
las funciones del sistema (cls y pause).
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

ACTIVIDAD 9
Código del Ejercicio 1 Convertir Unidades

Figura 9.1 Fragmento de Código del Ejercicio 1 Convertir Unidades

Figura 9.2 Fragmento de la Ejecución Exitosa Ejercicio 1 Convertir Unidades


Para lograr el objetivo de este código lo que se hizo fue crear 4 funciones:
 pies_metros la cuál recibe como parámetros de entrada una variable flotante
y regresa un impresión de pantalla (esto se especifica dentro de la función
de manera comentada con un ejemplo); tiene dos instrucciones una en la que
iguala la variable metro=pies/3.2808399 (dónde pies es la variable de
entrada) para obtener el equivalente en metros, después manda a imprimir
el total de pies equivalente a metros, para ello convertimos (dentro del print)
los números en caracteres mediante format.
 metros_pies la cuál recibe como parámetros de entrada una variable flotante
y regresa un impresión de pantalla (esto se especifica dentro de la función
de manera comentada con un ejemplo); tiene dos instrucciones una en la que
iguala la variable pies=metros*3.2808399 (dónde metros es la variable de
entrada) para obtener el equivalente en pies, después manda a imprimir el
total de metros equivalente a pies, para ello convertimos (dentro del print) los
números en caracteres mediante format.
 centigrados_fahrenheit la cuál recibe como parámetros de entrada una
variable flotante y regresa un impresión de pantalla (esto se especifica dentro
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

de la función de manera comentada con un ejemplo); tiene dos instrucciones


una en la que iguala la variable fahrenheit=(centigrados*1.8)+32 (dónde
centigrados es la variable de entrada) para obtener el equivalente en
fahrenheit, después manda a imprimir el total de centígrados equivalente a
fahrenheit, para ello convertimos (dentro del print) los números en caracteres
mediante format.
 fahrenheit_centigrados la cuál recibe como parámetros de entrada una
variable flotante y regresa un impresión de pantalla (esto se especifica dentro
de la función de manera comentada con un ejemplo); tiene dos instrucciones
una en la que iguala la variable centigrados=(fahrenheit-32)/1.8 (dónde
fahrenheit es la variable de entrada) para obtener el equivalente en
centigrados , después manda a imprimir el total de fahrenheit equivalente a
centigrados, para ello convertimos (dentro del print) los números en
caracteres mediante format.
Después se hacen las impresiones de pantalla referente al menú de opciones para
después igualar la variable opcion al la opción que deseamos mediante input
(opcion=input(“¿Qué opción desea ejecutar?”)), a continuación mediante un
while opcion!=e se repetirá, vez ejecutada una opción de la a-d, el menú para
poder escoger una nueva opción a ejecutar. Dentro del while, como no existe el
switch-case en Python, se hace uso de if-elif-elif-elif-else; el if hace referencia a
la opción a la cual nos pide que ingresemos el valor de pies que deseamos convertir
pies=float(input(“¿Cuántos pies desea convertir? “)) (se usó la palabra
reservada float para convertir el valor de entrada en uno flotante) después manda
a llamar la función pies_metros pasándole el valor de pies como parámetro de
entrada. El primer elif hace referencia al inciso b el cual nos pide que ingresemos
el valor de metros que deseamos convertir metros=float(input(“¿Cuántos metros
desea convertir? “)) (se usó la palabra reservada float para convertir el valor de
entrada en uno flotante) después manda a llamar la función metros_pies pasándole
el valor de metros como parámetro de entrada. El segundo elif se refiere a la opción
c la cual nos pide que ingresemos el valor de centígrados que deseamos convertir
centigrados=float(input(“¿Cuántos Centpigrados desea convertir? “)) (se usó
la palabra reservada float para convertir el valor de entrada en uno flotante)
después manda a llamar la función centígrados_fahrenheit pasándole el valor de
centigrados como parámetro de entrada. El último elif se refiere al inciso d el cual
nos pide que ingresemos el valor de fahrenheit que deseamos convertir
fahrenheit=float(input(“¿Cuántos Fahrenheit desea convertir? “)) (se usó la
palabra reservada float para convertir el valor de entrada en uno flotante) después
manda a llamar la función Fahrenheit_centigrados pasándole el valor de
fahrenheit como parámetro de entrada. Para terminar el while se vuelve a imprimir
el menú de opciones. En el else lo que se hace es imprimir una leyenda
especificando que escoja una de las opciones establecidas.
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

Por otro lado, ya sea que antes de entrar al while o dentro de este, si se escoge la
opción e se pasa a un if para validar que si se escogió e y de ser así se imprime
una leyenda diciendo que se cierra el programa.
Se le agregó la biblioteca os mediante from os import* (lo que podemos traducir
como “de la biblioteca os importar todas las funciones) para hacer uso de las
funciones del sistema (cls y pause).
ACTIVIDAD 10
Código del Ejercicio 2 Trabajando con una Lista

Figura 10.1 Fragmento del Código Trabajando con una Lista

Figura 10.2 Ejecución Exitosa del Código Trabajando con una Lista
Lo que hace el código es crear una función la cual declara una lista con 8 valores y
declara otras 2 variables (var1=0 y var2=1); después entra a un ciclo for el cuál
estará iterando con una variable i mientras que ésta no llegue al final de la lista
creada, dentro del for lo que hará es ir sumando los valores de la lista y almacenarlos
en la variable var1+=i (dónde i se encuentra en la primera posición de la lista), una
vez terminado el for pasaremos a otro for (con las mismas condiciones que el
anterior cambiando i por j) pero ahora irá multiplicando los valores de la lista var2*=j
dónde j es el valor dónde se encuentra de la lista. Para terminar la función imprime
las variables.
Al final del código manda a llamar la función anterior (función()). No se espera
ningún valor de entrada al código para su correcto funcionamiento, sin embargo en
la salida veremos impresiones de pantalla. Se le agregó la biblioteca os mediante
from os import* (lo que podemos traducir como “de la biblioteca os importar todas
las funciones) para hacer uso de las funciones del sistema (cls y pause).
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

PRÁCTICA 10
ACTIVIDAD 1
IF

Figura 1.1 Fragmento de Código IF

Figura 1.2 Ejecución Exitosa IF


Lo que hace este código es mostrarnos la forma en que escribimos una condicional
if; la función recibe como parámetros de entrada dos números (no sabemos si
enteros o flotantes, pero para generalidades decimos que son flotantes) flotantes,
dentro de la función mediante el if compara si el primer número es menor al
segundo, de ser así imprime una leyenda especificando esto, pero si resulta falso
no imprimirá nada el código. Terminada la función se manda a llamar dos veces una
con (5,7) la cuál nos dará como resultado una impresión especificando que 7 es
mayor a 5, la segunda vez se pasan los valores (7,5) y como la condicional es falsa
dentro de la función no imprimirá ni hará nada.
Después de lo anterior se igualan tres variables (en el mismo renglón) al valor 3,
después nos dirijimos a un if con la condición x==y==z, si esto es cierto se imprimirá
True.
Para el funcionamiento del código no se espera ningún valor de entrada pero para
la salida obtendremos impresiones de pantalla. Se le agregó la biblioteca os
mediante from os import* (lo que podemos traducir como “de la biblioteca os
importar todas las funciones) para hacer uso de las funciones del sistema (cls y
pause).
ACTIVIDAD 2
IF-ELSE
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

Figura 2.1 Fragmento del código IF-ELSE

Figura 2.2 Ejecución Exitosa de IF-ELSE


Este código contiene dos funciones, la primera de ellas recibe dos parámetros de
entrada (para facilidad diremos que ambos son flotantes) para pasar a un if
param1<param2 si esto es cierto la función retorna param2 de lo contrario regresa
retorna param1. Terminada la función mediante un pirnt (2 veces se realiza esta
acción) para imprimir el valor mayor de dos números se manda a llamar la función
anterior obtenerMayorv2, el primer print manda a la función (4,20) e imprime 20, el
segundo print manda a la función (11,6) e imprime 11.
La segunda función recibe 2 parámetros de entrada, la función hace prácticamente
lo mismo que la anterior pero en menos renglones; la variable valor almacena el
valor param2 si es mayor a param1 de lo contrario almacena este último
(valor=param2 if(param1<param2) else param1, y la función retorna valor. En
seguida mediante un print se manda a imprimir el resultado de la función
mencionada (obtenerMayor_idiom) con los valores (11,6) imprimiendo al final 11.
No se espera ningún valor de entrada al código pero en la salida obtendremos
impresiones de pantalla, previamente mencionados. Se le agregó la biblioteca os
mediante from os import* (lo que podemos traducir como “de la biblioteca os
importar todas las funciones) para hacer uso de las funciones del sistema (cls y
pause).
ACTIVIDAD 3
IF-ELIF-ELSE
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

Figura 3.1 Fragmento de Código IF-ELIF-ELSE

Figura 3.2 Ejecución Exitosa IF-ELIF-ELSE


En este código lo que se tiene son tres funciones:
 numero() recibe como parámetro de entrada un número entero, dentro de la
función (como no existe en Python el switch) nos encontramos con varios if
seguido de tres elif (los cuáles nos ahorran el tiempo y el espacio de poner
if’s dentro de varios else’s) para terminar con un else. Ahora bien, en el if y
los elif lo que hacen es comparar el parámetro de entrada con algún número
del 1-4, si se cumple alguna de estas condiciones se imprimirá el número
ingresado en cambio en el else (cuando no se cumple el if o los elif) imprime
que no existe esa opción.
Después de la función se manda a llamar dos veces con los siguientes
valores 2 y 5, la primera vez imprimirá Tu número es 2 mientras que la
segunda imprimirá No hay opción.
 numeros_idiom() recibe como parámetro de entrada un número entero,
dentro de la función (para ahorrarnos los renglones de if-elif-else) empleamos
un if con la condición de que si el parámetro de entrada se encuentra dentro
de una tupla con los números del 1-4 se imprimirá el número ingresado, de
lo contrario se imprime que no existe esa opción.
Manda a llamar dos veces a la función con los valores 2 y 5, la primera vez
imprime Tu número es 2 y la segunda vez 5 no es una opción.
 obtenerMasGradne() recibe como parámetro de entrada un 3 números
flotantes los cuáles (mediante if’s anidados) veremos cuál de esos tres
valores es el más grande. El primer if verifica si el primer valor es más grande
que el segundo (a>b), de ser así pasaremos a otro if para ver si el primer
valor es más grande que el segundo (a>c) si esto es cierto la función
retornará el valor a, de lo contrario retorna el valor c.
Si el primer if resulta falso pasaremos a otro if el cual comparará si el
segundo valor es mayor al tercer valor (b>c) si se cumple retornará el valor
de b de lo contrario retorna c.
La función se manda a llamar mediante un print para especificar que el
número más grande de 3 números, le pasamos los valores 7, 13 y 11 y como
resultado tenemos El más grande es 13.
Se le agregó la biblioteca os mediante from os import* (lo que podemos traducir
como “de la biblioteca os importar todas las funciones) para hacer uso de las
funciones del sistema (cls y pause).
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

ACTIVIDAD 4
Ciclo While

Figura 4.1 Fragmento del Código While

Figura 4.2 Ejecución Exitosa del Ciclo While


Este código consta de dos funciones, uno para imprimir valores de forma
descendente (cuenta) y otro para realizar el factorial de un número (factorial),
también se agregó una tercera función la cuál hace lo mismo que cuenta pero de
diferente forma (dicha función aparece comentada).
La función cuenta recibe como parámetro de entrada un número cualquiera (entero),
ya dentro de la función una variable local se iguala al valor de entrada (i=limite)
para después pasar a un while con condición True (se analizó el código durante un
tiempo tratando de ver en dónde la condición True hacía referencia, al final se
concluyó que, como dice la práctica, para el funcionamiento de un ciclo while la
condición debe ser verdadera para ello se utiliza True), ya dentro del ciclo se manda
a imprimir el valor de la variable i para después a esta variable restarle una unidad
i=i-1 y en seguida nos encontramos con un if para ver si i==0 si esto se cumple
entonces se rompe el ciclo, de lo contrario se seguirá repitiendo el ciclo while. Al
terminar indicar todos los pasos de la función se manda llamar la función con el
valor diez cuenta(10) obteniendo impresiones de pantalla de números de manera
descendente iniciando en el 10 y terminando en el 1.
La segunda función lo recibe como parámetros de entrada un número entero, dentro
de la función declara dos variables locales iniciadas con valores (i=2 y tmp=1) para
pasar a un while con la condición de que i<n+1 (dónde n es el parámetro de
entrada), ya dentro del while lo que se hace es igualar la variable tmp así misma
multiplicada por i (tmp=tmp*i) y a esta última variable se le aumenta una unidad.
Cuando termine el ciclo se retorna la variable tmp; después de indicar todos los
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

pasos de la función se manda a llamar dos veces mediante print(factorial(n)) con


dos valores diferentes factorial(4) y factorial(6) imprimiendo en pantalla 120 y 240.
Para este código no se espera ningún valor de entrada pero en la salida aparecerán
impresiones de pantalla. Se le agregó la biblioteca os mediante from os import* (lo
que podemos traducir como “de la biblioteca os importar todas las funciones) para
hacer uso de las funciones del sistema (cls y pause).
ACTIVIDAD 5
Ciclo For

Figura 5.1 Fragmento del Código Ciclo For

Figura 5.2 Ejecución Exitosa Ciclo For


El código consta de cuatro ejemplos de for; el primero iterará sobre una lista, para
ello se pone la “condición” de que x debe estar en la lista (for x in [1,2,3,4,5]) lo que
significa que x irá tomando los valores de la lista y avanzará sobre ella, cuando
llegue al final ya no se iterará después de ese valor, ahora dentro del for cada
iteración lo que hará es imprimir el valor de x que es dónde se encontrará en la lista
en ese momento.
El segundo for iterará mientras x se encuentre dentro del rango 5 (for x in range(5)
o sea iniciando de 0 hasta un número antes del rango, en este caso 5) y al igual que
el primer for imprimirá el valor de dónde se encuentre x en cada iteración. El tercer
for es lo mismo que el segundo, la única diferencia es que en el rango se meten
dos números (el primero es de dónde va a partir las iteraciones y el segundo es el
tope de las iteraciones) un -5 y un 2, entonces ya dentro del for se imprimirán
valores de x iniciando en -5 hasta llegar una unidad antes del tope (2) o sea llegando
a 1, esto nos muestra que también podemos iterar sobre números negativos.
El último for que hace es algo parecido al primer for, estárá iterando en una lista
pero ahora de cedenas de caracteres (de ucatro cadenas para ser ,más espíficos)
y dentro del for lo que se hará es imprimir los valores de la variable num la cuál
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

estará iterando sobre la lista mencionada obteniendo en pantalla impresiones de


pantalla uno, dos, tre, cuatro.
No se espera ningún valor de entrada al código para su correcto funcionamiento,
pero en la salida esperamos ver impresiones de pantalla. Se le agregó la biblioteca
os mediante from os import* (lo que podemos traducir como “de la biblioteca os
importar todas las funciones) para hacer uso de las funciones del sistema (cls y
pause).
ACTIVIDAD 6
Iteraciones en Diccionarios

Figura 6.1 Fragmento de Código Iteraciones en Diccionarios

Figura 6.2 Fragmento de la Ejecución Exitosa Iteraciones en Diccionarios


El código consta de cuatro ciclos for independientes y de dos funciones, iniciemos
por los ciclos for, pero primero que nada declaramos un diccionario llamado
elementos que contiene al hidrógeno asignado a 1, helio asignado a 2 y carbono
asignado a 6:
 El primer for lo que hace es, mediante dos variables (llave y valor), iterar
sobre los ítems del diccionario previamente creado, para ellos haremos el
mismo procedimiento que la ACTIVIDADI 5 for llave, valor in
elementos.items() y ya dentro del for lo que hace es imprimir los valores de
las llaves y de sus valores en cada iteración mediante print(llave, “=”, valor).
Obteniendo las respectivas llaves seguidas de sus valores (hidrogeno = 1).
 El segundo for funciona prácticamente de la misma forma que el primero,
sólo que ahora solamente queremos imprimir las llaves/indicadores para
ellos sólo hacemos uso de la variable llave y que ese encuentre dentro de
elementos.keys(), ya dentro del for ponemos print(llave) y obtenemos en
pantalla hidrogeno, helo y carbono.
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

 El tercer for iteramos sobre los valores del diccionario para ello usaremos la
variable valor sobre elementos.values() para imprimir mediante print(valor)
obteniendo en pantalla impresiones con los siguientes valores 1, 2, 6.
 El cuarto for utiliza dos variables uno que funge como índice idx y el segundo
que es para movernos en las llaves del diccionario x, las iteraciones se
realizarán de la siguiente manera for indx, x in enumerate(elementos)
(enumerate nos permite trabajar con los índices del diccionario, si no
utilizamos la palabra reservada enumerate pero si con las dos variables el
código nos marcará error) ya dentro del for lo que se hace es imprimir la llave
con su respectivo índice print(“El índice es: {} y el elemento es:
{}”.format(idx,x)) obteniendo en pantalla El índice es: 1 y el elemento es:
hidrogeno.
Ahora pasemos con las funciones:
 cuenta_idiom() Recibe como parámetro de entrada un número entero,
después mediante un for y una variable que nos ayude a movernos (i) iremos
de la siguiente manera for i in range(limite,0,-1) (dónde límite es el
parámetro de entrada a la función) como vemos range tiene ahora tres
valores, el primero hace referencia al punto de partida (de dónde iniciaremos
la iteración), el segundo hasta dónde no debemos llegar (en este caso al ser
cero debemos llegar al 1) mientras que el tercero nos indica los saltos de la
iteración (en este caso al ser -1 iremos moviéndonos de formas descendente
una unidad) mientras que esto se vaya cumpliendo imprimiremos los valores
iniciando por el límite hasta llegar a 1. Como podemos ver existe un else
dentro de la función, dicho else tiene la misma funcionalidad que con el if
pero ahora con el for, esto significa que cuando no se cumpla lo del for o
leguemos al final de las iteraciones nos dirigiremos al else para realizar la
impresión de pantalla indicada. Después de haber escrito la función se
manda a llamar con el valor de entrada 5 obteniendo en pantalla una serie
de números que van del 5-1 seguida de una leyenda que dice Cuenta
finalizada.
 cuenta_idiomv2() Recibe como parámetro de entrada un número entero,
funciona en su totalidad igual que la función anterior sólo que ahora dentro
del for tenemos un if, cuando el valor de i sea igual a 3 pasaremos a un
break el cuál rompe con el ciclo pero además hace que se ignore el else de
la función. Después de haber escrito la función se manda a llamar con el
valor de entrada 5 obteniendo en pantalla una serie de números del 5-3.
Para el correcto funcionamiento del código no se necesita un valore de entrada, en
la parte de salida esperamos impresiones de pantalla. Se le agregó la biblioteca os
mediante from os import* (lo que podemos traducir como “de la biblioteca os
importar todas las funciones) para hacer uso de las funciones del sistema (cls y
pause).
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

ACTIVIDAD 7
Bibliotecas

Figura 7.1 Fragmento de Código Bibliotecas

Figura 7.2 Fragmento de la Ejecución Exitosa Bibliotecas


Lo que hace el código es mostrarnos la forma en que podemos utilizar las
bibliotecas, en este caso haremos uso de la biblioteca math la cual contiene
diferentes funciones matemáticas, para ello necesitamos importar la biblioteca y hay
diferentes formas
 import math Mediante esta ya podemos hacer uso de las funciones de la
biblioteca pero debemos escribir la extensión math junto con la función a
utilizar (math.cos(valor)).
 from math import * Con este método importamos todas las funciones de la
biblioteca y no solamente eso, sino que ya no deberemos escribir a extensión
math (cos(valor)).
 from math import cos,pi Con esto nos referimos que solamente deseamos
importar esas funciones/valores de la biblioteca y también para su uso ya no
debemos escribir la extensión math (cos(pi)).
 import math as ma Mediante este método le ponemos un sobrenombre a la
biblioteca importada y para el uso de sus funciones debemos utilizar el
sobrenombre junto con la función a ocupar (ma.cos(valor)).
Para corroborar que si funciona eso, después de haber realizado las diferentes
“importaciones” de la biblioteca math igualamos una variable x=cos(pi) y después
la mandamos a imprimir obteniendo en cada caso un -1. Para ver las distintas
funciones de la biblioteca math lo que hacemos (una vez ya importada la biblioteca)
es escribir dir(math) y así imprimirá todas las funciones contenidas en math; por
otro lado si queremos saber cómo trabaja o lo que hace una función de la biblioteca
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

debemos escribir help(math.funcion_deseada) (un ejemplo help(math.log)) e


imprime las características de la función tales como los parámetros de entrada, lo
que realiza, qué pasa si no especifica un parámetro de entrada, etc.
Para el correcto funcionamiento del código no se necesita un valore de entrada, en
la parte de salida esperamos impresiones de pantalla. Se le agregó la biblioteca os
mediante from os import* (lo que podemos traducir como “de la biblioteca os
importar todas las funciones) para hacer uso de las funciones del sistema (cls y
pause).
ACTIVIDAD 8
Graficación

Figura 8.1 Fragmento de Código Graficación

Figura 8.2 Fragmento del Código Original Graficación

Figura 8.3 Ejecución Exitosa Graficación


Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

Primero que nada se debe aclara que el código original tenía varias fallas, se supuso
que esto pasaba porque no se trabajaba con el Jupyter Notebook, cuando se
compilaba el archivo se tenían varios errores respecto a las bibliotecas utilizadas
matplotlib, numpy y scipy (estas dos últimas son “subbliotecas” de matplotlib) tal
parecía que al momento de descargar Python de la página original dichas
bibliotecas no venían por defecto entonces para poder solucionar este problema se
accedió (mediante el símbolo del sistema) a la siguiente dirección del disco duro:
C:\Users\%Username%\AppData\Local\Programs\Python\Python39\Scripts
Ya ahí lo que se hace es ingresar el siguiente comando pip install biblioteca (en
la parte de biblioteca se pone las bibliotecas no instaladas y requeridas, por lo que
debimos hacer este paso 3 veces) y lo que hará a continuación es mostrar una barra
de carga que hace referencia a la descarga e instalación en progreso. Terminado
todo esto nos regresamos al programa para ejecutarlo sin embargo pero aparecían
otros dos problemas, el primero era que no existía el módulo pylab (%pylab inline)
así que se optó por quitarlo pero después había error en que no existía inline así
que mejor se comentó ese renglón, el segundo error era que al momento de
ejecutarlo el comando linspace no se había declarado por lo que investigando se
encontró que ese comando está en la biblioteca numpy así que se importó dicha
biblioteca y así ya no marcaba error.
Lo que hace el código es graficar la función de sin (seno) de x, los primeros
renglones del código son las importaciones de las bibliotecas a utilizar después lo
que se hace es igualar la variable x al comando linspace(0, 5, 20) lo cuál en la
gráfica generará 20 puntos de la gráfica sin (respecto al eje x) que vayan de 0 a 5.
El siguiente renglón no se supo qué son los comandos fug, ax, plt.subplots sin
embargo “experimentando” con ese renglón se llegó a la conclusión de que el primer
argumento modifica el color de fondo de la ventana emergente de la gráfica mientras
que el segundo argumento modifica el borde de la ventana (aunque no se pudo
apreciar dicha modificación).
Con el siguiente renglón se dedujo que los parámetros de entrada dentro de los
paréntesis son los necesarios para crear la gráfica, el primer parámetro es respecto
a qué variable se graficará, el segundo parámetro qué función se graficará, los
siguientes dos se refieren a cómo aparecerán en la gráfica los “datos” importantes
de la función para terminar el último parámetro no se entendió qué es lo que hace.
Los renglones en las que aparece una validación True no se pudo comprobar qué
era lo que hacía, las partes de ax.set_xlabel y ax.set_ylabel son para que
aparezcan en los ejes las respectivas leyendas de X y Y mientras que la parte de
ax.legend es para indicar que los puntos graficados son el punto y igual a la función
de x (y=sin(x)).
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

pl.title lo que hace es asignarle un nombre a la gráfica, por otra parte el comando
plt.savefig lo que hace es guardar la gráfica en forma de imagen para ello dentro
de los paréntesis indicamos el nombre que deseamos darle a la imagen junto con
la extensión y el último comando plt.show es para que nos aparezca en pantalla la
ventana de la gráfica que hemos creado; cabe aclarar que en el código original se
escribía primero plt.show() y después plt.savefig pero al momento de guardar la
gráfica en el formato especificado este sólo guardaba una hoja en blanco pero si
abría la ventana de la gráfica de Python, para solucionarlo se puso que primero se
guarde la imagen/pdf/documento de la gráfica y después se mostrara en pantalla.
Para el correcto funcionamiento del código no se necesita un valore de entrada, en
la parte de salida esperamos impresiones de pantalla. Se le agregó la biblioteca os
mediante from os import* (lo que podemos traducir como “de la biblioteca os
importar todas las funciones) para hacer uso de las funciones del sistema (cls y
pause).
ACTIVIDAD 9
Ejecución llenado de datos desde la ventana de comando (cmd)

Figura 9.1 Fragmento de Código Llenado de Datos

Figura 9.2 Fragmento de la Ejecución Exitosa Llenado de Datos en el IDLE


Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

Figura 9.3 Fragmento de la Ejecución Exitosa Llenado de Datos en cmd


Este código lo que hace es preguntar al usuario su nombre para almacenarlo en la
variable nombre mediante input para después imprimir un mensaje de bienvenida
incluyendo la información de la variable nombre. Enseguida entraremos a una
función denominada opciones la cual se encarga de imprimir en pantalla un menú
de opciones de las opciones que puede ejecutar el usuario (suma, resta,
multiplicación, división), dicha opción se almacena en la variable opcion para
espués entrar en un ciclo while el cual se estará repitiendo mientras que no
escojamos la opción 5.-Salir, en todas las opciones se le pedirá al usuario que
ingrese dos valores (val1 y val2) para después mandar a llamar la función
respectiva:
1. sumar(val1,val2) Recibe dos parámetros de entrada de estilo flotante, se
indica entre comillas triples cómo funciona la función y el valor de retorno
junto con un ejemplo, hablando en instrucciones lo que hace la función es
imprimir el resultado de la suma de los valores mediante print(“\nEl valor de
la suma es {}”.format(val1+val2)).
2. restar(val1,val2) Recibe dos parámetros de entrada de estilo flotante, se
indica entre comillas triples cómo funciona la función y el valor de retorno
junto con un ejemplo, hablando en instrucciones lo que hace la función es
imprimir el resultado de la resta de los valores mediante print(“\nEl valor de
la resta es {}”.format(val1-val2)).
3. multiplicar(val1,val2) Recibe dos parámetros de entrada de estilo flotante,
se indica entre comillas triples cómo funciona la función y el valor de retorno
junto con un ejemplo, hablando en instrucciones lo que hace la función es
imprimir el resultado de la multiplicación de los valores mediante print(“\nEl
valor de la multiplicación es {}”.format(val1*val2)).
4. dividir(val1,val2) Recibe dos parámetros de entrada de estilo flotante, se
indica entre comillas triples cómo funciona la función y el valor de retorno
junto con un ejemplo, hablando en instrucciones lo que hace la función es
imprimir el resultado de la división de los valores mediante print(“\nEl valor
de la división es {}”.format(val1/val2)).
Cuando se termina de ejecutar alguna de estas opciones se vuelve a imprimir el
menú de opciones, si se ingresa un número diferente entre 1-5 se imprime una
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

leyenda diciendo que por favor escoja una de las opciones establecidas. Para
finalizar el código se manda a llamar la función opciones() para que podamos
ejecutar el código como se explicó. Cómo podemos ver en términos de presentación
es mejor ejecutar los programas desde el símbolo del sistema y no en el IDLE esto
porque en el cmd si se limpiará la pantalla mediante los system(“cls”) pero el IDLE
no tiene esta capacidad por lo que se irá acumulando todas las impresiones de
pantalla que realicemos.
Para el correcto funcionamiento del código no se necesita un valore de entrada, en
la parte de salida esperamos impresiones de pantalla. Se le agregó la biblioteca os
mediante from os import* (lo que podemos traducir como “de la biblioteca os
importar todas las funciones) para hacer uso de las funciones del sistema (cls y
pause).
ACTIVIDAD 10
Actividad 10.1
Adivina la contraseña

Figura 10.1.1 Fragmento de Código Adivina la Contraseña

Figura 10.1.2 Ejecución Exitosa Adivina la Contraseña


Para la creación de este código se importaron dos bibliotecas importantes random
la cuál nos sirve para crear números aleatorios enteros mediante randint(0, 9) los
números que aparecen entre los paréntesis indican de dónde a dónde se tomarán
números enteros aleatorios (del 0 al 9) y para poder tener de manera aleatoria letra
mayúsculas o minúsculas para ello utilizamos choice(ascii_letters); por otro lado
importamos la biblioteca string para utilizar la función ascii_letters la cuál contiene
todas las letras mayúsculas y minúsculas.
Ahora bien lo que se hace dentro del código es primero tener la variable opcion
igualada a ranint(0,1) si el valor que almacena es 0 entonces el primer carácter que
tendrá la variable contraseña será una letra aleatoria pero si la opción almacena un
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

1 entonces el primer carácter será un número aleatorio, después pasamos a un for


con tope en 10 (esto para que nuestra contraseña, incluyendo el primer carácter,
sea de 11 caracteres) después nuevamente se realizará la asignación del valor de
la variable opcion tal como se describió anteriormente y otra vez si opcion es 0 el
carácter a almacenar será una letra y se juntará con el/los carácter(es) previamente
almacenado(s) (contraseña=contraseña+choice(ascii_letter)) de lo contrario
será un número el que se almacenará con el/los carácter(es) previamente
almacenado(s) (contraseña=contraseña+format(radint(0,9))).
Luego se le pedirá al usuario que ingrese la contraseña (sin que él la sepa) para
almacenarla en la variable contraseña_ingresada, en seguida nos encontraremos
con un while dónde comparará si la contraseña ingresada es igual a la contraseña
del sistema, mientras esto sea falso (o sea diferentes las contraseñas) se le pedirá
al usuario que vuelva a intentarlo, cuando no se cumpla la validación del while se
imprimirá una leyenda diciendo que la contraseña es correcta y se puede continuar.
Se le agregó la biblioteca os mediante from os import* (lo que podemos traducir
como “de la biblioteca os importar todas las funciones) para hacer uso de las
funciones del sistema (cls y pause).
Actividad 10.2
Adivina la contraseña restricción de intentos

Figura 10.2.1 Fragmento de Código Adivina la Contraseña Restricción de


Intentos

Figura 10.2.2 Ejecución Exitosa Adivina la Contraseña Restricciones de


Intentos
Funciona prácticamente igual que el código anterior, la única modificación que se e
hizo es que antes de entrar directamente a al ciclo while nos encontramos un un if
el cual hace la validación de que si la contraseña ingresada diferente que la del
sistema, si se cumple pasaremos a un while el cuál se repetirá mientras que la
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

variable j sea menor a 3 (j está iniciada en 0), dentro del while se iguala la variable
intenos=3-j para después decirle al usuario que le quedan intentos para adivinar
la contraseña que lo intente de nuevo, después nos encontramos con otro if (dentro
del while) para ver si se ingresó la contraseña requerida porque si esto se cumple
se le indica al usuario y termina el while de lo contrario se repetirá la instrucción del
while; si el usuario no adivina la contraseña en 4 intentos (el primero y los otros 3
del while) se imprimirá una leyenda dónde indicará cuál era la contraseña.
Sin embargo, si se adivina desde el primer intento la contraseña se le indica al
usuario que es correcta y puede continuar. Se le agregó la biblioteca os mediante
from os import* (lo que podemos traducir como “de la biblioteca os importar todas
las funciones) para hacer uso de las funciones del sistema (cls y pause).
ACTIVIDAD 11
Calificación

Figura 11.1 Fragmento de Código Calificación

Figura 11.2 Fragmento de la Ejecución Exitosa Calificación


El código al inicio declara 3 listas referentes a tareas, exámenes y prácticas (sin
embargo, a pesar de que se llenaron las listas no se utilizaron en el código) y 3
variables iniciadas en 0 referentes a la calificación total de tareas, exámenes y
prácticas. Enseguida se le pregunta al usuario cuántas tareas desea ingresar (se
almacena en cantidad_tareas) para pasar a un for i in range(cantidad_tareas) en
el cuál se le preguntará al usuario cuál es la calificación para almacenarla en
calificacion_tarea y almacenarla en la lista de tareas mediante
tareas.append(calificacion_tareas) para terminar en la suma de las calificaciones
en calificacion_total_tareas=calificacion_total_tareas+calificacion_tarea; al
terminar el for se saca el promedio de tareas mediante
promedio_tareas=calificacion_total_tareas/cantidad_tareas. Todo lo anterior se
repite con el apartado de exámenes y prácticas pero cambiándole el nombre a las
variables según como se necesite.
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

Después se saca la calificación del estudiante en exámenes mediante


Exámenes=promedio_exámenes*0.65, también se saca la calificación de las
prácticas Prácticas=promedio_prácticas*0.35 para al final sumarlos y tener
Promedio_curso. Enseguida nos encontramos con un if el cuál valida si el
promedio de tareas es superior a 8.5 porque de ser así le suma al promedio del
curso 0.5 y lo almacena en Promedio_final, si no se cumple pasa a un elif en el
que valida si el promedio de tareas se encuentra entre 7.1-8.5 porque de ser así el
promedio final es igual al promedio del curso (Promedio_final=Promedio_curso),
si eso tampoco se cumple entonces lo que se hace es que al promedio del curso se
le resta 0.5 y se almacena en Promedio_final.
Luego lo que se hace es que cada variable de que tenga la palabra promedio se
redondeará a 2 decimales mediante promedio_tareas=round(promedio_tareas,
2) (esto se aplica en cada variable de promedio), para finalizar se manda a imprimir
una serie de leyendas indicando el promedio de exámenes, promedio de prácticas,
promedio del curso, el promedio de tareas y al final el promedio final del alumno. Se
le agregó la biblioteca os mediante from os import* (lo que podemos traducir como
“de la biblioteca os importar todas las funciones) para hacer uso de las funciones
del sistema (cls y pause).
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

CONCLUSIONES
El uso de este nuevo lenguaje de programación no fue de dificultad para el alumno
debido a que, antes de entrar al semestre en curso, se tomó un curso para aprender
la syntaxis y su, por otro lado el alumno encuentra pros y contras tales como que es
más rápido/sencillo programar ya que no se ocupan llaves para indicar el inicio-fin
de algún ciclo al igual que no debemos utilizar los punto y coma al terminar un
renglón provocando que se reduzca el tiempo de escritura y el tamaño del código,
sin embargo esto también puede ser un contra porque si el alumno no está
acostumbrado a ocupar sangrías en la programación de C fácilmente puede
ocasionar errores al programar en Python. Otra cosa importante es que es un poco
más complicado el uso de las bibliotecas, esto porque al momento de importarlas
(lo que es equivalente a incluirlas en C) si queremos hacer uso de alguna función
dentro de ellas debemos ocupar la extensión nombre_bibloteca.funcion_deseada
lo que ocasionaría costo en el tiempo de programación o incluso errores si el
programador se le olvida hacerlo, aunque existe una solución (importar toda las
funciones de la biblioteca y no sólo la biblioteca) puede que al programador también
se le olvide.
Otra desventaja es que no existe el do-while para poder, dentro de este, asignar
valores a la variable que queremos usar como condición (o incluso hacer
impresiones de pantalla consecutivas antes de asignar valor a la variable deseada)
provocando que tengamos que hacer las impresiones de pantalla y asignación de
la variable fuera de un while para después volver hacerlo dentro de este
ocasionando que el código sea más extenso de lo habitual, por otro lado tenemos
la ausencia del switch aunque se puede remplazar con if-elif-else nos trae un gran
problema debido a que en el switch podíamos poner en un mismo renglón dos casos
a la vez si estos eran de aspecto carácter (minúscula y mayúscula) la solución sería
el uso de una lista o de estructura lógica and/or provocando que el programador
tenga confusiones o no llegue a lo deseado.
A pesar de todo lo anterior Python nos facilita la vida en comparación a C ya que
tiene varias funciones ya creadas (como contar la repetición de una letra en una
cadena de caracteres, ver la longitud de una cadena de caracteres, etc)
ahorrándonos tiempo y espacio, esto debido a que en C nosotros deberíamos crear
esas funciones o al menos los renglones de código para ocupar dentro de una
función, otro pro que tiene este lenguaje de programación es que nos evita tener los
conflictos de las variables enteras, flotantes, cadenas, caracteres permitiéndonos
mezclar o modificar durante la ejecución de un programa sin entrar en conflictos.
Por último Python nos permite realizar operaciones que no dejaba C además de que
podemos realizar gráficas.
Hablando en el tema de la práctica los problemas mostrados nos permiten
familiarizarnos con este lenguaje junto con la comparación de C para así hacer más
fácil/sencilla la transición de un lenguaje a otro, en la primera práctica se llevo
Cote Valencia Alexis Daniel Gpo1 Práctica 9-10 Introducción Python (I,II)

mucho tiempo en la explicación de cada código ya que se explicaba a detalle


(porque era la primera vez que se trabajaba en Python) lo que hacía cada renglón
de los programas junto con su equivalente al lenguaje C; el único pero/queja o
sugerencia es en la actividad de graficación ya que no se explica que hace la
mayoría de los renglones con funciones vistas por primera vez provocando que el
alumno quede en duda del funcionamiento de dichas funciones.
Otra cosa a destacar es en la parte del ejercicio de la contraseña ya que no se indica
al inicio el tamaño de la contraseña por lo que el alumno eligió dicho tamaño sin
saber si era el correcto, también al momento de no saber cuál era la contraseña
creada por el programa se podría entrar en un bucle infinito de intentos lo cuál es
tedioso afortunadamente se hizo modificación en la segunda versión de contraseña
para solo tener 4 intentos.
Respecto a los objetivos de las prácticas se puede concluir que se cumpliron
parcialmente, esto debido a que si se lograron cumplir las bases del lenguaje Python
pero en el IDLE desarrollado por la página original de Python, debido a esto no se
cumplió la parte en que el alumno desarrollaría los programas en el ambiente de
ipython notebook provocando que los objetivos quedaran inconclusos pero
cumpliendo con la mayor e importante parte de estos.

También podría gustarte