Como buscar un segmento de texto en una frase sin index
Publicado por Acro (1 intervención) el 02/04/2022 05:02:28
Este es el programa que estoy usando y quisiera saber si hay alguna manera de solucionarlo, para este programa no puedo usar el .index
def Busqueda(tex1,tex2,pos,long,List):
if pos>len(tex2)-1:
coin=long-pos
List.append(coin)
pos=0
let1=tex2[pos]
while len(tex1)>=long+1:
x=tex1[long]
if let1!=x:
long=long+1
elif let1==x:
pos=pos+1
long=long+1
Busqueda(tex1,tex2,pos,long,List)
return print(List)
tex1=input("Inserte el primer parametro: ")
tex2=input("Inserte el segundo parametro: ")
tex1=list(tex1)
tex2=list(tex2)
List=[]
long=0
pos=0
Busqueda(tex1,tex2,pos,long,List)
input()
Este es el resultado que obtengo :
Inserte el primer parametro: un tete te
Inserte el segundo parametro: te
[3, 5, 8]
[3, 5, 8]
[3, 5, 8]
[3, 5, 8, 7]
[3, 5, 8, 7]
[3, 5, 8, 7, 7]
[3, 5, 8, 7, 7]
[3, 5, 8, 7, 7, 4, 8]
[3, 5, 8, 7, 7, 4, 8]
[3, 5, 8, 7, 7, 4, 8]
[3, 5, 8, 7, 7, 4, 8, 6]
[3, 5, 8, 7, 7, 4, 8, 6]
[3, 5, 8, 7, 7, 4, 8, 6, 4, 8]
[3, 5, 8, 7, 7, 4, 8, 6, 4, 8]
[3, 5, 8, 7, 7, 4, 8, 6, 4, 8]
[3, 5, 8, 7, 7, 4, 8, 6, 4, 8, 6]
[3, 5, 8, 7, 7, 4, 8, 6, 4, 8, 6]
y se repite el ciclo y no se por que, solo debería imprimir el primero
def Busqueda(tex1,tex2,pos,long,List):
if pos>len(tex2)-1:
coin=long-pos
List.append(coin)
pos=0
let1=tex2[pos]
while len(tex1)>=long+1:
x=tex1[long]
if let1!=x:
long=long+1
elif let1==x:
pos=pos+1
long=long+1
Busqueda(tex1,tex2,pos,long,List)
return print(List)
tex1=input("Inserte el primer parametro: ")
tex2=input("Inserte el segundo parametro: ")
tex1=list(tex1)
tex2=list(tex2)
List=[]
long=0
pos=0
Busqueda(tex1,tex2,pos,long,List)
input()
Este es el resultado que obtengo :
Inserte el primer parametro: un tete te
Inserte el segundo parametro: te
[3, 5, 8]
[3, 5, 8]
[3, 5, 8]
[3, 5, 8, 7]
[3, 5, 8, 7]
[3, 5, 8, 7, 7]
[3, 5, 8, 7, 7]
[3, 5, 8, 7, 7, 4, 8]
[3, 5, 8, 7, 7, 4, 8]
[3, 5, 8, 7, 7, 4, 8]
[3, 5, 8, 7, 7, 4, 8, 6]
[3, 5, 8, 7, 7, 4, 8, 6]
[3, 5, 8, 7, 7, 4, 8, 6, 4, 8]
[3, 5, 8, 7, 7, 4, 8, 6, 4, 8]
[3, 5, 8, 7, 7, 4, 8, 6, 4, 8]
[3, 5, 8, 7, 7, 4, 8, 6, 4, 8, 6]
[3, 5, 8, 7, 7, 4, 8, 6, 4, 8, 6]
y se repite el ciclo y no se por que, solo debería imprimir el primero
Valora esta pregunta


0