Ausgeben von Elementen der Liste in separate Textdateien in Python

Im neu, um Python-Programmierung und brauchen einige Hilfe mit einigen grundlegenden Datei I / O und Liste Manipulation.

Ich habe derzeit eine Liste, die diese Elemente hat:

['taylor343', 'steven435', 'roger101\n'] 

Was ich tun muss, ist, jede Zeile in neue Textdateien zu drucken, wobei nur das 1 Element in den Textdateien wie unten gezeigt ist:

 File1.txt
 Taylor343

 File2.txt
 Steven435

 File3.txt
 Roger101

Im derzeit versucht, mit diesem mit einer Schleife zu arbeiten, aber ich kann nur in 1 Textdatei ausgegeben werden

 for x in list: output.write(x+"\n") 

Wie kann ich es schaffen, jede einzelne Zeile der Liste in neue Textdateien zu schreiben (nicht nur eine)

Vielen Dank

  • Python MemoryError oder ValueError in np.loadtxt und iter_loadtxt
  • Python-Komprimierung einer Reihe von JSON-Objekten bei der Serienübertragung?
  • Python liest 1000 zu einer zeit bis zum Ende der Datei?
  • Elegante Möglichkeit, die erste Zeile bei der Verwendung von Python-Dateiinput-Modul zu überspringen?
  • Wie lese und schreibe ich eine Tabelle / Matrix mit einer Python-Datei?
  • Python öffnen und Speicher leckt
  • Python-Datei-Modi Detail
  • Fehler beim Erstellen einer neuen Textdatei mit Python?
  • 2 Solutions collect form web for “Ausgeben von Elementen der Liste in separate Textdateien in Python”

    Sie müssen jede neue Datei öffnen, in die Sie schreiben möchten. Als kurzes Beispiel:

     items = ['taylor', 'steven', 'roger'] filenames = ['file1', 'file2', 'file3'] for item, filename in zip(items, filenames): with open(filename, 'w') as output: output.write(item + '\n') 

    @Joe Kington schrieb eine ausgezeichnete Antwort, die sehr pythonisch ist. Eine ausführlichere Antwort, die das Verständnis vermitteln könnte, was etwas leichter geht, wäre so etwas wie folgt:

     s = ['taylor343', 'steven435', 'roger101\n'] f = open("file1.txt","w") f.write(s[0]+"\n") f.close() f = open("file2.txt","w") f.write(s[1]+"\n") f.close() f = open("file3.txt","w") f.write(s[2]) # s[2] already has the newline, for some reason f.close() 

    Wenn ich es ein bisschen allgemeiner machen würde, würde ich das tun:

     s = ['taylor343', 'steven435', 'roger101'] # no need for that last newline for i,name in enumerate(s): f = open("file"+str(i+1)+".txt","w") f.write(name+"\n") f.close() 
    Python ist die beste Programmiersprache der Welt.