Ich bin neu in Python. Ich muss einige Daten aus meinem Programm in eine Tabelle schreiben. Ich habe online gesucht und es scheinen viele Pakete verfügbar zu sein (xlwt, XlsXcessive, openpyxl). Andere schlagen vor, in eine CSV-Datei zu schreiben (nie CSV verwendet und nicht wirklich verstanden, was es ist).
Das Programm ist sehr einfach. Ich habe zwei Listen (float) und drei Variablen (Strings). Ich kenne die Länge der beiden Listen nicht und sie werden wahrscheinlich nicht gleich lang sein.
Ich möchte, dass das Layout wie im Bild unten aussieht:
Die rosa Spalte enthält die Werte der ersten Liste und die grüne Spalte enthält die Werte der zweiten Liste.
Was ist der beste Weg, dies zu tun?
PS Ich verwende Windows 7, aber Office muss nicht unbedingt auf den Computern installiert sein, auf denen dieses Programm ausgeführt wird.
import xlwt
x=1
y=2
z=3
list1=[2.34,4.346,4.234]
book = xlwt.Workbook(encoding="utf-8")
sheet1 = book.add_sheet("Sheet 1")
sheet1.write(0, 0, "Display")
sheet1.write(1, 0, "Dominance")
sheet1.write(2, 0, "Test")
sheet1.write(0, 1, x)
sheet1.write(1, 1, y)
sheet1.write(2, 1, z)
sheet1.write(4, 0, "Stimulus Time")
sheet1.write(4, 1, "Reaction Time")
i=4
for n in list1:
i = i+1
sheet1.write(i, 0, n)
book.save("trial.xls")
Ich habe dies mit all Ihren Vorschlägen geschrieben. Es erledigt die Arbeit, kann aber leicht verbessert werden.
Wie formatiere ich die in der for-Schleife (list1-Werte) erstellten Zellen als wissenschaftlich oder als Zahl?
Ich möchte die Werte nicht abschneiden. Die im Programm verwendeten tatsächlichen Werte würden nach der Dezimalstelle etwa 10 Stellen haben.