2017-07-27 4 views
-1

Ich versuche Elemente in einer Textdatei zu zählen. Ich weiß, dass ich einen offensichtlichen Teil vermisse, aber ich kann es nicht genau sagen. Dies ist, was ich zur Zeit habe, die produziert nur die Anzahl der Buchstaben „f“ nicht die Datei:Wie zählen Elemente in einer Textdatei?

filename = open("output3.txt") 
f = open("countoutput.txt", "w") 
import collections 
for line in filename: 
    for number in line.split(): 
     print(collections.Counter("f")) 
     break 
+0

können Sie eine Probe Ihrer Datei teilen? Sie berechnen auch die Anzahl der "f" Buchstaben pro Zeile; Sie möchten die Gesamtanzahl von "f" in der ganzen Datei haben? – MedAli

+0

Chemische Elemente? – nbro

Antwort

2
import collections 

counts = collections.Counter() # create a new counter 
with open(filename) as infile: # open the file for reading 
    for line in filename: 
     for number in line.split(): 
      counts.update((number,)) 
      print("Now there are {} instances of {}".format(counts[number], number)) 
print(counts) 
+4

ein paar Kommentare oder Zeilen der Erklärung würde wahrscheinlich einen langen Weg für einen scheinbar neuen Benutzer von Python gehen .. – Aaron

+0

@Aaron Ich musste nur nie die Counter-Funktion verwenden –

+0

@ H.Minear Es ist gut für jemand anderen mit einem ähnlichen Frage auch, auch wenn Sie nur durch das Lesen des Codes verstehen können .. – Aaron

Verwandte Themen