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

  • Lesen Sie die Datei aus Zeile 2 oder überspringen Sie die Kopfzeile
  • Python liest keine gesamte Textdatei
  • Ist ein Python-Datei-Objekt eine echte Datei?
  • Löschen aller Dateien in einem Verzeichnis mit Python
  • Datei mit "open ()" vs "mit open ()" [duplicate]
  • Python MemoryError oder ValueError in np.loadtxt und iter_loadtxt
  • 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.