ich bin neu im Forum und fange gerade an Python zu lernen.Ich habe mir ein kleines Programm zusammengetüfftelt was mir aus einer Datei einen von mir gewünschten Teil ausgibt.In der Shell habe ich nun auch meine gewünschte Ausgabe.Allerdings würde ich die Ausgabe sehr gerne in eine neue Datei schreiben lassen.Damit ich das Programm einfach ausführen kann und mir dann eine Datei mit der Lösung ausgegeben wird.
Ich weiß das man Dateien mit z.B
out = open("out.txt","w")
out.write()
out.close()
schreiben lassen kann,allerdings muß man ja in die Klammern bei out.write()eine gewünschte Variable eingeben.Ich weiß nur leider irgendwie nicht wie ich aus dem Programm eine Variable oder sowas mache.
Hier ist mein Quellcode:
Code: Alles auswählen
f = open ("versuch.txt","r")
s = f.read()
f.close()
#hier ist das Array fuer die Namen
names = s.split("Sets included in the consensus tree")[0].split("Species in order:")[1].split("\n")[2:]
#hier Array fuer includeten
inc = s.split("CONSENSUS TREE:")[0].split("How many times out ")[1].split("\n")
incl = [x for x in inc if x.replace(' ', '') != '']
incl = [x for x in incl if x != ''][1:]
rates = [x.split(" ") for x in incl]
rates = [x[-1] for x in rates]
#hier ist das Array fuer die notincludeden
has_ninclu = False
if s.find("Sets NOT included in consensus tree:") != -1:
nincl= s.split("CONSENSUS TREE:")[0].split("Sets NOT included in consensus tree:")[1].split("\n")
nincl=[x for x in nincl if x.replace(' ',"")][1:-1]
rate = [x.split(" ") for x in nincl]
rate = [x[-1] for x in rate]
has_ninclu = True
#schleife fuer included
print "Sets included in the consensus tree:\n"
for j in range (0,len(incl)):
print rates[j]
for i in range (0,len(incl[j])):
if incl [j][i] == "*":
print names[i]
print "\n"
#schleife fuer NOT included
if has_ninclu:
print "Sets NOT included in consensus tree:\n"
for j in range (0,len(nincl)):
print rate[j]
for i in range (0,len(nincl[j])):
if nincl [j][i] == "*":
print names[i]
print "\n"
else:
print "No sets were reported which were NOT included in consensus tree"