Quiero unirme a 2 oraciones como:
sent1 = 'abcdefghiklmn'
sent2 = 'ziklmopqrst'
2 oraciones tienen el mismo iklm
result = 'abcdefghiklmnopqrst'
¡Muchas gracias!
3 respuestas
difflib.SequenceMatcher
es útil:
from difflib import SequenceMatcher
match = SequenceMatcher(None, sent1, sent2).find_longest_match(0, len(sent1), 0, len(sent2))
result = sent1[:match.a]+sent2[match.b:]
Tal vez esto pueda ayudar
sent1 = 'abcdefghiklmn'
sent2 = 'ziklmnopqrst'
for i in sent1:
n = 0
for f in sent2:
n += 1
if i == f:
result = sent1 + sent2[n:]
break
print(result)
Esto puede funcionar:
list(set(list("abc")+list("adef")))
La salida es:
['a', 'c', 'b', 'e', 'd', 'f']
Y para convertirlo en una sola cadena:
"".join(['a', 'c', 'b', 'e', 'd', 'f'])
La producción es:
'acbedf'
Preguntas relacionadas
Nuevas preguntas
python
Python es un lenguaje de programación multipropósito, de tipificación dinámica y de múltiples paradigmas. Está diseñado para ser rápido de aprender, comprender y usar, y hacer cumplir una sintaxis limpia y uniforme. Tenga en cuenta que Python 2 está oficialmente fuera de soporte a partir del 01-01-2020. Aún así, para preguntas de Python específicas de la versión, agregue la etiqueta [python-2.7] o [python-3.x]. Cuando utilice una variante de Python (por ejemplo, Jython, PyPy) o una biblioteca (por ejemplo, Pandas y NumPy), inclúyala en las etiquetas.