El 25 de octubre de 2012 14:13, alito s <alit...@gmail.com> escribió:

> Hola a tod@s:
> Molestandolos de nuevo. Estoy buscando unos números al final de una línea.
> Cada línea tiene diferentes especificaciones y solo me interesa el número
> al final de cada línea. Lo hice con expresiones regulares y todo bien, como
> debe de ser, la única restricción es que los números deben ser ">=20" así
> que se me ocurrió poner un "if" como condicionante. Y todo bien, me lo
> imprime en pantalla, sin embargo, a la hora que quiero que me guarde solo
> los números me manda el "TypeError: expected a character buffer object" y
> no se por qué. Seguramente es una tontería pero no le encuentro como
> solucionarlo. Me interesa gurdarlo.
> Les dejo mi código.
>
>
> outp = open("errores.txt", "w")
>
> for line2 in a:
>     a2 = re.search(r"\d+$", line2)
>     a3 = int(a2.group())
>     if a3 >=20:
>         print (a3)
>         outp.write(a3)
>
> outp.close()
>
> De antemano, gracias.
>
>

el propio mensaje de error lo dice:  " expected a character buffer object"


>>> o = open('/tmp/kk', 'w')
>>> o.write(3)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: expected a character buffer object

>>> o.write('3')
>>>

>>> help(o.write)

write(...)
    write(str) -> None.  Write string str to file.

    Note that due to buffering, flush() or close() may be needed before
    the file on disk reflects the data written.



Jose
_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a