J'essaie de rechercher un fichier où la ligne contenant le terme recherché est trouvée et imprimée avec un nombre de lignes avant et après le terme de recherche défini par l'utilisateur. Le codage j'ai à ce jour est:Recherche de fichier: TypeError
f = open(f, 'r')
d = {}
for n, line in enumerate(f):
d[n%numb] = line.rstrip()
if search_term in line:
for i in rang(n+1,n+1+numb):
print d[i%numb]
for i in range(1, numb):
print f.next().rstrip()
Mais je reçois un TypeError à d [% engourdis] = line.rstrip() type d'opérande non pris en charge (s) pour%: 'int' et 'str'
aide serait un grand merci
Avez-vous envisagé d'utiliser 'grep -C'? –
numb devrait être combien de lignes avant ou après que vous voulez voir après que le terme de recherche est trouvé. c'est-à-dire, si vous voulez voir 5 lignes avant et après que le mot soit trouvé, alors spécifiez numb = 5 – ghostdog74
vous devriez couper et coller correctement la prochaine fois. Voir http://stackoverflow.com/questions/1927276/searching-a-file/1927413#1927413 again – ghostdog74