J'écris en python 3.6 et j'ai de la difficulté à faire correspondre mon code à des chaînes de caractères dans un document texte court. ceci est un exemple simple de la logique exacte qui brisait mon programme plus:Vérifier si la chaîne est dans le fichier texte ne fonctionne pas
PATH = "C:\\Users\\JoshLaptop\\PycharmProjects\\practice\\commented.txt"
file = open(PATH, 'r')
words = ['bah', 'dah', 'gah', "fah", 'mah']
print(file.read().splitlines())
if 'bah' not in file.read().splitlines():
print("fail")
avec le document de texte formaté comme ceci:
bah
gah
fah
dah
mah
et il imprime en effet à échouer chaque fois que je lance ce . Est-ce que j'utilise la méthode incorrecte de lecture des données du document texte?
Vous avez déjà 'lu 'le fichier, donc quand vous le' lisez 'la deuxième fois, il n'y a plus aucun contenu à lire. Débarrassez-vous de votre instruction 'print' ou utilisez' file.seek (0) '. –
Vous lisez le fichier plusieurs fois avant de le fermer. Ajoutez 'file.seek (0)' après votre instruction 'print', ou stockez le contenu dans une variable – Wondercricket
Essayez ce' si 'bah' n'est pas dans la liste (file.readlines()) ' –