J'ai un fichier avec des mots, chaque ligne contient un mot. Ce que j'essaie de faire est de demander à l'utilisateur une lettre et de rechercher des mots avec toutes ces lettres utilisateurs a une entrée. Je travaille dessus pendant quelques jours mais je ne peux pas faire de lignes 7 et 8 en cours d'exécution correctement uniquement d'erreurs différentes ou ne donnez aucun résultat.
letters = input('letters: ')
words = open('thesewords').read().splitlines()
print (words)
print(".......................")
for word in words:
if all(letters) in word:
print(word)
4 Réponses :
Vous utilisez Ce que vous devriez faire est: p> donc, il devient: p> tout () code> à tort.
Tout (lettres) code> est toujours un true code> pour chaîne lettres code> et true in for word in words:
if all(x in word for x in letters):
print(word)
Oui, je l'ai eu maintenant, je l'utilisais à tort, c'était le dernier de nombreux autres que j'ai fait, de cette façon fonctionne merci.
une solution plus simple si vous omettez tout code> serait:
Oui, seulement si lettres code> est un sous-ensemble de mot code>.
Essayez ceci:
letters = input('letters: ')
# Make sure you include the full file name and close the string
# Also, .readlines() is simpler than .read().splitlines()
words = open('thesewords.txt').readlines()
# I'll assume these are the words:
words = ['spam', 'eggs', 'cheese', 'foo', 'bar']
print(words)
print(".......................")
for word in words:
if all(x in word for x in letters):
print(word)
Comme il y a beaucoup d'erreur de syntaxe dans le code, j'essaie de ré-écrire le code que vous avez fourni en tirant une croquis approximative de votre objectif. J'espère que le code ci-dessous satisfera votre demande.
letters = input("letters:" )
words = open("thesewords.txt","r")
for word in line.split():
print (word)
print(".......................")
for wrd in words:
if letters in wrd:
print(wrd)
else:
continue