Lectura y realización de acciones a partir del contenido de archivos.
Estoy tratando de hacer este laboratorio que me da mucha información de un archivo .txt. Cada línea contiene algunas letras y números y se supone que debo escribir código para responder 5 preguntas de cada línea del texto: imprimir la secuencia de 5 letras usando letras minúsculas, imprimir si la secuencia de 5 letras contiene alguna vocal, imprimir el volumen de una esfera que tiene el radio del primer número, imprimir si los otros 3 números pueden formar un triángulo y imprimir el promedio de los últimos 3 números.
Aquí hay 3 líneas del archivo Lab5_Data.txt:
WLTQS 13 64 23 99
ZNVZE 82 06 53 82
TMIWB 69 93 68 65
Aquí está la salida esperada de esas 3 líneas:
La cadena en minúsculas es wltqs
WLTQS no contiene vocales
El volumen de la esfera con radio 13 es 9202.7720799157
64, 23, 99 no pueden formar un triángulo.
El promedio de 64, 23, 99 es 62.0
La cadena en minúsculas es znvze
ZNVZE contiene vocales
El volumen de la esfera con radio 82 es 2309564.8776326627
6, 53, 82 no pueden formar un triángulo.
El promedio de 06, 53, 82 es 47.0
La cadena en minúsculas es tmiwb
TMIWB contiene vocales
El volumen de la esfera con radio 69 es 1376055.2813841724
93, 68, 65 pueden formar un triángulo
El promedio de 93, 68, 65 es 75.33333333333333
Aquí está mi código hasta ahora:
with open(‘Lab5_Data.txt’, ‘r’) as my_file:
for line in my_file:
data = line.split()
print(line)
for line in my_file:
line = line[0:5].lower()
print(‘La cadena en minúsculas es’, line)
for i in my_file:
if(i== ‘A’ or i== ‘E’ or i== “I” or i== ‘O’ or i== ‘U’):
print(‘contiene vocales’)
else:
print(‘no contiene vocales’)
Estoy teniendo problemas para hacer que cada línea se divida para que cuando imprima la salida, muestre cada una de las respuestas junto con la misma línea. Además, tengo dificultades para obtener las funciones para cada una de estas respuestas sin hacer un gran bucle for. Si alguien tiene alguna sugerencia para ayudarme, ¡se lo agradecería mucho!
davy.ai
Para dividir cada línea y obtener el resultado para cada pregunta, puedes crear funciones separadas para cada pregunta y llamarlas dentro del bucle para cada línea. Aquí hay un ejemplo de código:
Al definir funciones separadas, podemos llamar a cada función dentro del bucle para cada línea y obtener el resultado de las 5 preguntas para cada línea. ¡Espero que esto ayude!