Fragen, was ist die effizienteste Methode zum Lesen von Daten aus einer lokal bereitgestellten Datei mit Python.Daten aus der Dateiperformance extrahieren (Subprozess vs Datei lesen) Python
Entweder Subprozesse und nur Katze der Inhalt der Datei mit:
ssh = subprocess.Popen(['cat', dir_to_file],
stdout=subprocess.PIPE)
for line in ssh.stdout:
print line
oder einfach Inhalt der Datei lesen:
f = open(dir_to_file)
data = f.readlines()
f.close()
for line in data:
print line
ich ein Skript erschaffe, die den Inhalt lesen hat viele Dateien und ich frage mich, welche Methode ist am effizientesten in Bezug auf die CPU-Auslastung und auch die schnellste in Bezug auf die Laufzeit ist.
Dies ist meine erste Post hier bei stackoverflow, Entschuldigung für die Formatierung.
Dank
Wenn Sie Zeile für Zeile möchten, müssen Sie nicht öffnen und dann lesen, können Sie direkt 'für Zeile in öffnen (dir_to_file)' – heltonbiker
Meine Vermutung ist, wenn CPU-Auslastung Ihr Anliegen ist, dann spielt es mehr Bedeutung Sie tun Zeile für Zeile als das, was das Lesen macht. Sie werden von der Festplatte mit IO-Engpässen behaftet sein, bevor die CPU auf diese Beispiele verzichtet. – chrisd1100
Sie haben eine Frage gestellt, die Sie nur beantworten können. Implementieren Sie beide und messen Sie sie. Niemand sonst kann Ihnen sagen, welches besser für * Ihre * Daten auf * Ihrem * Computer ist. Nachdem ich das gesagt habe, behaupte ich, dass der zweite fast garantiert schneller ist. –