2017-07-14 6 views
-2

permet de considérer un exempletrouver Python qui correspondent chaîne avec la chaîne aléatoire

words_list = ['apple', 'mango', 'orange'] 

origin = "acacpdqlep" 

de "un cac p DQ lep" le terme 'pomme' peut être extrait

Comment puis-je résoudre ce programme sans aucune bibliothèque, certains comme ceci

if words_list in origin: 
    return True 
else: 
    return False 

S'il vous plaît aidez-moi dans le concept de réaliser cela. Merci d'avance.

+2

'de l'importation de collecte Counter' calculer le nombre de chaque lettres du mot. Comparer le compte de chaque mot dans une liste de mots avec le mot d'origine si le nombre de chaque lettre dans la liste de mots est inférieur à celui de l'origine Vous avez votre réponse –

Répondre

1

Je pense que c'est ce que vous cherchez:

words_list = ['apple', 'mango', 'orange'] 
origin = "acacpdqlep" 

def letters_in(word, origin): 
    origin_chars = list(origin) 
    for char in word: 
     if char in origin_chars: 
      origin_chars.remove(char)     
     else: 
      return False 
    return True 

for word in words_list: 
    print '{}: {}'.format(word, letters_in(word, origin)) 

Sortie:

apple: True 
mango: False 
orange: False