Hi johnbecker,
in dem Code ist ja einiges daneben, Bist Du sicher daß das ein Pythonbuch ist?
list ist hier ein Dictionary, wobei es schon mal fahrlässig ist eine Variable nach einem Builtin zu benennen wird dann auch noch statt über die Struktur mittels Hilfskonstruktion und umständlich mit list.keys()[a] und list.values[a] was unnötige Methodenaufrufe verursacht auf die Daten zugegriffen. Der Autor jammert dann sicher über die schlechte Performance von Python.
hier mal eine sauberere Lösung mit a
Code: Alles auswählen
data={"bla":"121211","blubb":544234}
fw=open("foo.txt","w")
keys = data.keys()
values = data.values()
for a in xrange(len(data)):
#print a, keys[a], values[a] # uncomment for verbose output
fw.write(keys[a]+"\t"+str(values[a])+"\n")
fw.close()
Du kannst in der die Zeile die mit #print anfängt das erste # löschen, dann wird dir angezeigt in der Console, welche Werte a keys[a] und values[a] annehmen.
Um Daten ins selbe Verzeichnis wie das Pythonscript zu kannst du folgendes verwenden:
Code: Alles auswählen
fname = os.path.join(os.path.dirname(__file__), "foo.txt")
Und hier wie man das eigentlich in Python macht.
Code: Alles auswählen
#!/usr/bin/env python
import os
#Datei in selbes Verzeichnis wie das Script
fname = os.path.join(os.path.dirname(__file__), "foo.txt")
daten = {"bla":"121211","blubb":544234} # besser daten statt list!
fw = open(fname, "w")
for key, value in daten.iteritems():
fw.write(key+"\t"+str(value)+"\n")
fw.close() # Datei brav wieder schließen
Gruß
Dookie