ayuda
Chema Cortés
py en ch3m4.org
Vie Ago 20 10:50:34 CEST 2004
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Thursday 19 August 2004 18:08, alexander rodriguez wrote:
> el problema que tengo es que ya leyendo un archivo .txt y buscando la
> palabra con findall()dentro de las lineas del archivo me arroja la
> palabra(s) similar pero lo que nesecito es que al introducir parte de la
> palabra el resultado sea toda la palabra o la linea donde se encuentre
> esta.
Deduzco que quieres hacer algo "interactivo" de modo muestre la palabra
encontrada a medida que escribes, similar a como lo hace la barra de
direcciones de un navegador (¿me equivoco?). El tema de leer interactivamente
las pulsaciones de teclado no es algo trivial. Hace un tiempo puse por aquí
una "receta" para hacerlo en linux (en windows es más fácil):
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/203830
Supongo que éste era el problema. Si no es así, especifica algo más como el
sistema operativo y si piensas usar algún tipo de entorno gráfico.
#!/usr/bin/python
#-*- coding: iso8859-15 -*-
import sys
FICHERO=r"fichero.txt" #ruta al fichero
TESTIGO="@" #carácter para terminar la búsqueda
DEL=chr(127) #en windows hay que cambiarlo por chr(8)
#Importando la función getch
if "linux" in sys.platform:
#módulo de la receta de ch3m4 para linux
from linuxgetch import TerminalFile
getch=TerminalFile(sys.stdin).getch
elif "win" in sys.platform:
from msvcrt import getch
else:
sys.exit("No sé leer el teclado en este sistema")
fichero=file(FICHERO)
print "Recorriendo el fichero: %s\n\n" % FICHERO
cadena="" #cadena de búsqueda inicial
while 1:
c=""
while not c:
c=getch()
if c==TESTIGO:
break
elif c==DEL:
cadena=cadena[:-1]
else:
cadena+=c
print ">> '%s' --"%cadena,
fichero.seek(0) #volvemos al principio
for linea in fichero:
if cadena in linea:
print linea
break
else:
print "***NO ENCONTRADA***"
OJO: No lo he probado en windows.
> recuerdo que esto no es un trabajo y agradecería a la persona que se ponga
> en contacto para que me aleccione sobre python.
Espero que comprendas el código. Si hay algo que no lo ves no dudes en
consultárnoslo.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
iD8DBQFBJbtdHLTQrABk8H0RAt5zAJ9PXPPPYSxBHQcLVnvAIIRoE+WKFwCePdMZ
2YlIQAerCKGY3wqahs3DQ+k=
=bUsM
-----END PGP SIGNATURE-----
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es
Más información sobre la lista de distribución Python-es