elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: Java [Guía] Patrones de diseño - Parte 1


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting (Moderador: Eleкtro)
| | |-+  [Python 3.5.2] Buscar dentro de un archivo de texto
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Python 3.5.2] Buscar dentro de un archivo de texto  (Leído 485 veces)
Geormarsch

Desconectado Desconectado

Mensajes: 159



Ver Perfil
[Python 3.5.2] Buscar dentro de un archivo de texto
« en: 17 Julio 2017, 05:20 »

Hola buenas noches.
Estoy haciendo éste código que por el momento crea un archivo de texto con lineas que almacenan un RUT y un TALLER.

Lo que quiero que haga la opción 2, sería buscar dentro del archivo de texto que se crea y luego leerlo y ver si es que el RUT se repite más de 1 vez, lógicamente hablando si se repite sería porque está con otro TALLER guardado.

Código:
195194467 chile
197632782 peru
195194467 colombia

Es ahí donde la opción 2 debería tener una salida así.

>> 195194467 chile
>> 195194467 colombia

Por el momento al tipear en la opcion 2 y busca en el archivo, sólo imprime el primer RUT que encuentra, ya que ahí termina el ciclo for, no sé como hacer para ver si en el archivo de texto hay más de 1 rut asociado con diferente TALLER

Código
  1. #!usr/bin/python
  2. #-*- coding: utf-8 -*-
  3.  
  4.  
  5.  
  6. def menu():
  7.  
  8.    print ("1 --- AGREGAR PERSONA")
  9.    print ("2 --- BUSCAR RUT")
  10.    print ("3 --- MOSTRAR BASE DE DATOS\n")
  11.  
  12.  
  13.    opcion = int(input("OPCIÓN: "))
  14.  
  15.    if opcion == 1:
  16.        print ("EL RUT DEBE SER INGRESADO SIN PUNTOS NI GUIÓN")
  17.        x = 0
  18.  
  19.        while (x == 0):
  20.            rut = input("RUT: ")
  21.            taller = input("TALLER: ")
  22.  
  23.            escritura_datos = open('base_datos_talleres_laborales.txt', 'a')
  24.            escritura_datos.write(rut)
  25.            escritura_datos.write(" ")
  26.            escritura_datos.write(str(taller + '\n'))
  27.  
  28.            continuar = str(input("CONTINUAR? (S/N): "))
  29.            if continuar == "s" or continuar == "S":
  30.                continue
  31.            if continuar == "n" or continuar == "N":
  32.                escritura_datos.close()
  33.                menu()
  34.  
  35.    if opcion == 2:
  36.        buscar_rut = input("RUT A BUSCAR: ")
  37.        leer_bd = open('base_datos_talleres_laborales.txt', 'r')
  38.  
  39.        for x in leer_bd:
  40.            if buscar_rut in x:
  41.                print (x)
  42.  
  43.            else:
  44.                print ("RUT NO REGISTRADO")
  45.                break
  46.  
  47.        print ("PRESIONA UNA TECLA PARA IR AL MENU")
  48.        tecla = input()
  49.        menu()
  50.  
  51.    if opcion == 3:
  52.        lectura = open('base_datos_talleres_laborales.txt', 'r')
  53.        imprimir = lectura.read()
  54.        print ('\n')
  55.        print (imprimir)
  56.        print ("PRESIONA UNA TECLA PARA IR AL MENU")
  57.        tecla = input()
  58.        menu()
  59.  
  60.    else:
  61.        print ("OPCIÓN NO VÁLIDA")
  62.        menu()
  63.  
  64.  
  65.  
  66.  
  67. menu()


En línea

"Comentar el código es como limpiar el cuarto de baño; nadie quiere hacerlo, pero el resultado es siempre una experiencia más agradable para uno mismo y sus invitados"
ivancea96


Desconectado Desconectado

Mensajes: 3.206


ASMático


Ver Perfil WWW
Re: [Python 3.5.2] Buscar dentro de un archivo de texto
« Respuesta #1 en: 17 Julio 2017, 20:58 »

Tienes un else en el if. Si uno d elso registros que recorre no es lo que quieres, va a dar como que no existe. Simplemente, quita el else.

Luego, al acabar el for, comprueba si has encontrado algún registro o no (por ejemplo, poniendo una variable inicializada a false a true cuando entre en el if). En caso de que no, muestras el mensaje de que no se ha encontrado.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Buscar texto dentro de archivos
Windows
Alvaro Tanco 1 1,563 Último mensaje 2 Septiembre 2007, 23:54
por silverhack
Buscar texto dentro de un archivo y reemplazar
Programación Visual Basic
| Sota | 2 4,154 Último mensaje 12 Febrero 2010, 00:42
por raul338
Buscar cadena de texto dentro de otra. PHP
PHP
OssoH 5 17,721 Último mensaje 27 Febrero 2011, 21:16
por OssoH
Buscar cadenas de texto dentro de un archivo
.NET
Ikillnukes 9 2,601 Último mensaje 21 Febrero 2013, 07:15
por Ikillnukes
Buscar texto dentro de archivo de texto por GUI
GNU/Linux
spysecurityca 1 493 Último mensaje 30 Diciembre 2014, 03:01
por MinusFour
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines