martes, 12 de octubre de 2010

Script (mejorado) para contar caracteres de ficheros en Python

Hola. El siguiente script cuenta caracteres en un fichero de texto, excepto los espacios en blanco, tabuladores, retornos de carro line feed y form feed. Tal como ha dicho un navegante, en Linux hay wc, pero es que yo trabajo en Windows.


# Script para contar caracteres en un fichero de texto dado, pasado
# como parámetro. ¡Segundo intento!

import sys

# Declaramos algunas constantes.
FF = '\f' # Form Feed
LF = '\n' # Line Feed
CR = '\r' # Carriage Return
TAB = '\t' # Tabulador
SPACE = ' ' # Blanco
try:
excepcion = 0
fichero = sys.argv[1]
f = open(fichero,"r")
caracteres = f.read()
for i in caracteres:
if i in [FF, LF, CR, TAB, SPACE]: excepcion += 1
f.close()
print "El fichero %s tiene %d caracteres" \
%(fichero, len(caracteres) - excepcion)
except: print "Error al abrir el fichero."

Saludos.

3 comentarios:

  1. Muchas gracias por el consejo. Yo en mi trabajo a veces necesito saber eso y siempre recurro a una herramienta online que se llama contar caracteres. Esto parece mucho más rápido.
    Un saludo,
    Juan

    ResponderEliminar
  2. Muchas gracias por el consejo. Yo en mi trabajo a veces necesito saber eso y siempre recurro a una herramienta online que se llama contar caracteres. Esto parece mucho más fácil.
    Un saludo,
    Juan

    ResponderEliminar
  3. Hoja Juan. Me alegra saber que te ha ayudado este script. Un saludo.

    ResponderEliminar