Seite 1 von 1
In den Dateinamen eine Variable einfügen lassen die selbstständig weiter zählt
Verfasst: Sonntag 15. September 2024, 08:45
von Challanger
Code: Alles auswählen
vokabel ="Dieter"
for zahl in range(3):
filename ="Name-.csv"
file1 = open(filename, "w")
file1.write(vokabel)
file1.close()
Ich kann das Problem schlecht beschreiben, sonst hätte ich auch wohl mit Google lösen können.
Ich möchte mit dem Script erreichen das mir drei CSV Dateien ausgegeben werden mit den Dateinamen
Name-01.csv
Name-02.csv usw.
also einen Zähler einbauen
Bin über hilfe sehr dankbar
mfg Sönke
Re: In den Dateinamen eine Variable einfügen lassen die selbstständig weiter zählt
Verfasst: Sonntag 15. September 2024, 09:05
von Sirius3
Um in Strings Variablen einzusetzen benutzt man f-Strings.
Dateien öffnet man innerhalb eines with-Statements und für csv-Dateien gibt es das csv-Modul.
Code: Alles auswählen
import csv
vokable = "Dieter"
for zahl in range(1, 4):
filename = f"Name-{zahl:02d}.csv"
with open(filename, 'w', encoding='utf8', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerow([vokabel])
Re: In den Dateinamen eine Variable einfügen lassen die selbstständig weiter zählt
Verfasst: Sonntag 15. September 2024, 09:06
von noisefloor
Hallo,
der Dateiname ist auch "nur" ein String, d.h. du kannst auf den Dateinamen alle Möglichkeiten der Stringformatierung von Python anwenden.
Links:
Gruß, noisefloor
Re: In den Dateinamen eine Variable einfügen lassen die selbstständig weiter zählt
Verfasst: Sonntag 15. September 2024, 09:14
von Challanger
Super ich bedanke mich
nochmal das Script (waren kleine Fehler drinn, aber bitte nicht falsch verstehen

)
Code: Alles auswählen
import csv
vokable = "Dieter"
for zahl in range(1, 4):
dateiname = f"Name-{zahl:02d}.csv"
with open(dateiname, 'w', encoding='utf8', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerow([vokable])
Re: In den Dateinamen eine Variable einfügen lassen die selbstständig weiter zählt
Verfasst: Sonntag 15. September 2024, 12:14
von sparrow
Ergänzend noch der Hinweis auf
pathlib.Path.glob.
Wenn die Anforderung der 4 Dateien immer gleich bleibt, wäre die hier gezeigt Lösung richtig. Auch weil man dann die Gewisseheit hat, dass alle Dateien auch tatsächlich vorhanden sind.
Falls die Anzahl der Dateien variabel ist, könnte man mit entsprechenden Wildcards alle finden: Name-*.csv
Re: In den Dateinamen eine Variable einfügen lassen die selbstständig weiter zählt
Verfasst: Sonntag 15. September 2024, 12:21
von Sirius3
@sparrow: es geht um das Schreiben von Dateien, nicht lesen.
Re: In den Dateinamen eine Variable einfügen lassen die selbstständig weiter zählt
Verfasst: Sonntag 15. September 2024, 12:26
von sparrow
Danke für den Hinweis, Sirius3.
Wer lesen kann ist klar im Vorteil.