Ok, donc je ne pouvais pas trouver un titre approprié donc je ne peux pas expliquer le mieux possible.Trouver toutes les chaînes spécifiques dans un fichier, et obtenir la valeur la plus élevée hors de la ligne
J'ai une liste faite à partir des données d'un autre fichier qui est fait de noms, prenons par exemple quelque chose comme celui-ci list = ['AAA','BBBB','CCCC','DDDD']
. Je veux rechercher dans un autre fichier tous les éléments de cette liste, et toutes les lignes qui les contiennent. Disons que mon fichier txt ressemble à ceci.
PIN |Direction |MaxUp |MaxDn |MinUp |MinDn |Net
AAA | IN |0.46 |0.039 | -0.006 |0.009 | Top/AAA
AAA | IN |-0.015 |-0.020 | 0.016 |0.030 | Top1/AAA
AAA | IN |0.029 |0.019 | -0.006 |0.009 | Top2/AAA
AAA | IN |0.036 |0.029 | -0.006 |0.009 | Top3/AAA
Alors Mon code se présente comme suit:
for string in list:
with open('Text.txt') as file:
for lines in file:
if string in lines:
#Get all lines
#Get the line with the highest maxup and Maxdn
La sortie du processus devrait afficher toutes les lignes qui ont la chaîne que nous examinons actuellement si:
il doit montrer tous les 4 lignes qui contiennent AAA dans ce cas, et il obtiendra alors seulement le plus haut MaxUp et MaxDn donc la sortie devrait être:
PIN |Direction |MaxUp |MaxDn
AAA | IN |0.46 |0.039
J'ai une idée générale de ce que je devrais faire mais le processus prend beaucoup de temps car Im ouvrir un fichier dans une boucle for me semble un peu faux.
Oui, l'ouverture et la lecture de la même le fichier 'N' envoie mal. Échangez les boucles de sorte que, pour chaque ligne, vous vérifiez la liste des chaînes cibles. – Fhaab
Cela vous intéresse-t-il seulement d'apparaître dans le code PIN? ou à travers toute la ligne? – mattjegan