meine Frage ist, dass ich versuche, eine Funktion zu schreiben, die die Anzahl der Zeichen in einigen angegebenen. Txt-Datei zählt. Ich habe den folgenden Code erstellt.Python - Zählen der Anzahl der Zeichen in Dateien
def file_size(filename):
with open('data.txt', 'r') as file:
filename = file.read()
len_chars = sum(len(word) for word in filename)
return len_chars
Diese Funktion funktioniert, wenn ich es mit print(file_size('data.txt'))
nennen und gibt mir die richtige Ausgabe. Ich frage mich jedoch, wie ich meinen Code ändern kann, so dass er die Anzahl der Zeichen in jeder. TXT-Datei im selben Verzeichnis wie das Programm selbst zählen kann, anstatt nur data.txt, wenn ich es mit aufrufen. Wenn zum Beispiel 10 .txt-Dateien in demselben Verzeichnis wie mein Programm gespeichert sind, würde ich gerne dieses Programm für diese Dateien ausführen können, ohne den Namen der Datei in meine Funktion eingeben zu müssen, sondern stattdessen den Name der Datei beim Aufruf der Funktion. Vielen Dank im Voraus für jede Hilfe.
Siehe [sys.argv] (https://docs.python.org/3/library/sys.html#sys.argv). –
einfach Schleife über 'os.listdir (my_folder)' und verwenden Sie einen entsprechenden Titel bitte, Ihre Frage ist mehr über, wie man Schleife über einen Ordner als tatsächlich zählen Zeichen (die Sie bereits gelöst haben) – Julien
Siehe auch [os.path.getsize ] (https://docs.python.org/3/library/os.path.html?highlight=os%20path#os.path.getsize) was das tut, was Sie versuchen zu schreiben. –