Je suis assez novice en matière de python et j'ai vu des réponses à des questions similaires, mais j'ai eu beaucoup de mal à les comprendre. Je crée donc une nouvelle question.
Je vais essayer de donner autant de contexte et de code que nécessaire.
J'essaie donc de rechercher dans un fichier .csv une chaîne de caractères/un nombre (je ne le cherche que dans la première colonne) et si je le trouve, je fais en sorte qu'il saisisse la ligne entière où se trouve la chaîne de caractères/le nombre.
(import csv was included)
input_string = input()
input_string_2 = input()
def search(x):
for row in (the .csv file):
if x == row[0]:
print (row)
return row
output_array = search(input_string)
output_array_2 = search(input_string_2)
Cela semble fonctionner avec une seule entrée. Mais si j'essaie avec des entrées multiples, il ne parcourt la liste qu'une seule fois, ce qui signifie que parfois je n'obtiendrai pas le résultat de la deuxième recherche. Je demande si quelqu'un sait comment faire pour que la fonction recommence à chaque fois qu'elle est appelée. Merci d'avance.
Notez que je n'ai pas obtenu d'erreur lorsque j'ai exécuté cette procédure, donc s'il y a une faute d'orthographe évidente, ce n'est probablement pas le problème.
Edit : La solution qui a été postée pourrait ne pas être assez large pour répondre à la question dans d'autres situations.