Von Liste in Datei schreiben

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
Gunnar
User
Beiträge: 68
Registriert: Samstag 23. Oktober 2004, 08:59

Also,
da mein anderer Thread nur so vor Verzweiflung strotzt und sehr wirr geschrieben ist, frage ich hier mal ganz simpel eine Sache :lol:

Wie kann ich von einer Liste , die andere Listen enthält, in eine Datei schreiben. Dort will ich dann zwischen den einzelnen Daten auch Leerzeichen und am gewünschenten Zeilenende Zeilenumbrüche setzen.

Kann mir jemand den Vorgang grob schildern ?

Danke...
Gunnar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Hi Gunnar,

wo is das Problem?

Code: Alles auswählen

#!/usr/bin/env python
# -*- coding: UTF-8 -*-


def write_list(f, the_list, split_ch=" "):
    for record in the_list: # write records to file
        line = split_ch.join(record)+"\n" # create line
        f.write(line)
    
def read_list(f, split_ch=" "):
    res = [] #result
    for line in f: # read line by line
        record = line.strip().split(split_ch) # split line to record
        res.append(record)
    return res


if __name__ == "__main__":
    import os
    fname = "test.dat"
    if os.path.exists(fname):
        my_file = file(fname, 'r')
        my_list = read_list(my_file)
        my_file.close()
        print my_list
    else:
        my_list = [["123", "test", "567"],
                   ["231", "foo", "890"],
                   ["312", "bar", "999"]]
        my_file = file(fname, 'w')
        write_list(my_file, my_list)
        my_file.close()
        print "liste gespeichert!"
Gruß

Dookie
[code]#!/usr/bin/env python
import this[/code]
Gast

Das Problem liegt darin, daß du keine groben Vorgänge schildern kannst :lol:

Im Ernst, danke für die detaillierte Antwort.

Mfg Gunnar
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Anonymous hat geschrieben:Das Problem liegt darin, daß du keine groben Vorgänge schildern kannst :lol:
Sprich jetzt macht selbscoden keine Spaß mehr? Aber du kannst versuchen es noch zu optimieren, oder gar das ganze als neuen List Datentyp auflegen.. oder es als 1 zeiliges lambda, map(), filter() reduce() Konstrukt machen *g*
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten