Seite 1 von 1

Bearbeiten von csv-dateien

Verfasst: Dienstag 14. Juni 2005, 13:35
von Gast
Hi!

Ich möchte eine csv-Datei einlesen und unter geändertem Namen abspeichern.
Kann doch nicht so schwer sein, oder
hat jemand einen tipp?

Re: Bearbeiten von csv-dateien

Verfasst: Dienstag 14. Juni 2005, 13:58
von Francesco
Gast hat geschrieben:Hi!

Ich möchte eine csv-Datei einlesen und unter geändertem Namen abspeichern.
Kann doch nicht so schwer sein, oder
hat jemand einen tipp?
Hallo, wenn ich das richtig verstehe, willst du nur das file umbenennen?
Du brauchts das einlesen gar nicht.

import os
os.rename(old, new)

Verfasst: Dienstag 14. Juni 2005, 14:01
von Gast
Nein, ich möchte eine Kopie der Datei abspeichern (unter geändertem Namen). Geht das auch ohne einlesen?

Verfasst: Dienstag 14. Juni 2005, 15:17
von Leonidas
Gast hat geschrieben:Nein, ich möchte eine Kopie der Datei abspeichern (unter geändertem Namen). Geht das auch ohne einlesen?
Nein, dazu musst du sie tatsächlich einlesen.

Ich würds halt so machen: originaldatei öffnen (Nur-Lesen), Kopie öffnen (Schreiben), jeweils aus dem Original eine Zeile auslesen, diese in die Kopie speichern und dann beide schließen.

Verfasst: Dienstag 14. Juni 2005, 15:26
von Gast
ja, an die Möglichkeit dachte ich auch schon, aber die Kopie existiert ja noch nicht sondern soll erst erzeugt werden.

Verfasst: Dienstag 14. Juni 2005, 15:30
von Leonidas
Deswegen öffnest du die Datei im Schreibmodus: wenn es diese Datei nicht gibt, wird sie erstellt.

Verfasst: Dienstag 14. Juni 2005, 15:35
von tabellar
... wenn es nur um das Kopieren einer Datei geht, wäre das "os" Modul auch noch sehr hilfreich:

import os

#WIN
os.system("copy fileorg filecopy")

#Linux
os.system("cp fileorg filecopy")


Tabellar

Verfasst: Dienstag 14. Juni 2005, 15:50
von Leonidas
tabellar hat geschrieben:... wenn es nur um das Kopieren einer Datei geht, wäre das "os" Modul auch noch sehr hilfreich:

import os

#WIN
os.system("copy fileorg filecopy")

#Linux
os.system("cp fileorg filecopy")
Warum externe Programme aufrufen, wenn Python das auch per shutil kann? shutil.copyfile wäre wohl was für dich.

Verfasst: Dienstag 14. Juni 2005, 16:40
von tabellar
Leonidas hat geschrieben:Warum externe Programme aufrufen, wenn Python das auch per shutil kann? shutil.copyfile wäre wohl was für dich.
Ha, super, "shutil" kannte ich noch gar nicht :oops: ... Funktioniert auch wunderbar systemunabhängig (Linux, Win, ... ).

Tabellar

Verfasst: Dienstag 14. Juni 2005, 16:44
von Leonidas
tabellar hat geschrieben:Ha, super, "shutil" kannte ich noch gar nicht :oops: ...
Ich vor kurzem auch nicht, bis mich BlackJack darauf aufmerksam gemacht hat.

Verfasst: Dienstag 14. Juni 2005, 19:53
von Gast
Und wie genau funktioniert das shutil?

Verfasst: Dienstag 14. Juni 2005, 20:09
von fs111
Das kannst Du hier nachlesen:

http://python.org/doc/current/lib/module-shutil.html

fs111

Verfasst: Mittwoch 15. Juni 2005, 12:58
von Leonidas
Gast hat geschrieben:Und wie genau funktioniert das shutil?
Das habe ich doch schon verher geschreiben:
Leonidas hat geschrieben:Warum externe Programme aufrufen, wenn Python das auch per shutil kann? shutil.copyfile wäre wohl was für dich.
Wie du siehst, ist im Text shutil ein Link auf die entsprechende Seite in der Dokumenation.