Python - Estadisticas de un archivo de texto

 
Vista:
sin imagen de perfil
Val: 43
Ha disminuido su posición en 2 puestos en Python (en relación al último mes)
Gráfica de Python

Estadisticas de un archivo de texto

Publicado por El turco (17 intervenciones) el 05/10/2018 16:19:49
Escribir un programa, que solicite el nombre de un arhcivo, lo procese e imprima por pantalla cuántas lineas, cuantas palabras y cuántos caracteres contiene el archivo.

Lo unico que puede hacer es ver cuantas lineas contiene el texto, pero no se como para ver las palabras y los caracteres que contiene.

archivo=open("Datos.txt", "r")
print(archivo.name)

lineas = len(open('Datos.txt').readlines())
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de abZer0x
Val: 425
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Estadisticas de un archivo de texto

Publicado por abZer0x (109 intervenciones) el 06/10/2018 07:34:37
Hola, hice un pequeño código, el cual es una de las tantas soluciones que hay.
Te dejo también un ejemplo, utilizando en siguiente archivo.

books.txt
1
2
3
4
5
6
1) Las bóvedas de acero, Isaac Asimov, 224
2) A Storm of Swords, George R. R. Martin, 1216
3) The Two Towers, J. R. R. Tolkien, 352
4) The Fellowship of the Ring, J. R. R. Tolkien, 432
5) The Alchemist, Paulo Coelho, 197
6) A Game of Thrones, George R. R. Martin, 864

index.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
try:
    filename = input('Ingresa el nombre del archivo: ')
    with open(filename, "r") as f:
        lines = 0
        words = 0
        chars = 0
        line = f.readline()
        while line:
            lines += 1
            words += len(line[:-1].split())
            chars += len(line[:-1])
            line = f.readline()
except FileNotFoundError as e:
    print("El archivo de nombre '{}' no existe".format(filename))
except PermissionError as e:
    print("No tienes permiso para acceder al archivo '{}'".format(filename))
else:
    print("Cantidad de lineas: ", lines)
    print("Cantidad de palabras: ", words)
    print("Cantidad de caracteres:", chars)

Ejecución:
1
2
3
4
5
$ python3 index.py
Ingresa el nombre del archivo: books.txt
Cantidad de lineas:  6
Cantidad de palabras:  54
Cantidad de caracteres: 261
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar