import csv
if __name__ == "__main__":
words = ["great" , "thanks"]
with open("data/sentiwordnet.tsv", "r") as f:
reader = csv.DictReader(f,delimiter='\t')
for word in xrange(len(words)):
for row in reader:
if row['word_en'] == words[word]:
print float(row["positive"])
print float(row["negative"])
print row["synset"]
Résultats:sortie inattendue lors de la lecture d'un fichier csv dans une boucle
0.75
0.0
124567
Les résultats ci-dessus sont seulement pour le 1er mot, à savoir « grand ». La boucle se termine ici - elle ne passe pas au mot suivant.
Êtes-vous sûr que la condition if est vraie pour tous les mots après le premier – Natecat
Peut-être que 'merci' n'existe pas dans votre fichier? –
Vous pourriez utiliser 'for word in words '' à la place pour être plus explicite dans votre nom de variable. –