Ich versuche, die Ausgabe einer Regex-Suche zu zählen, die ich an einem Dataset durchführe, aber aus irgendeinem Grund ist meine Zählung um einiges geringer. Ich habe mich gefragt, was ich falsch mache und wie ich eine offizielle Zählung bekommen kann. Ich sollte ungefähr 1500 Übereinstimmungen haben, aber ich bekomme immer einen Fehler, der sagt "'int' Objekt ist nicht iterierbar".Regex Output Count
import re
with open ('Question 1 Logfile.txt' , 'r') as h:
results = []
count = []
for line in h.readlines():
m = re.search(r'(((May|Apr)(\s*)\w+\s\w{2}:\w{2}:\w{2}))', line)
t = re.search(r'(((invalid)(\s(user)\s\w+)))',line)
i = re.search(r'(((from)(\s\w+.\w+.\w+.\w+)))', line)
if m and t and i:
count += 1
print(m.group(1),' - ',i.group(4),' , ',t.group(4))
print(count)
hier zählen ist eine Liste während der Initialisierung und Sie können ein Listenobjekt nicht erhöhen.Zählen Sie zählen = 0 – bigbounty
@bigbounty Ja, danke Ich kann nicht glauben, dass ich das verpasst habe. Eine letzte kurze Frage, diese Methode zählt jede Ausgabe wie sie kommt, wie kann ich am Ende eine Gesamtzählung machen? – user7823345
@bigbounty Wie kann ich einen Kommentar upvote? und kannst du erklären, was du meinst, indem du count.append (1) sagst? – user7823345