Ergenisse 2 for loops kombinieren

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
bjorn_kramp
User
Beiträge: 1
Registriert: Mittwoch 15. Oktober 2014, 15:57

Hallo

ich möchte die Ergebnisse von 2 For loops kombinieren. Print data und print data2 sehen unabhängig von einander gut aus. Aber wenn ich beide kombinieren möchte nimt er nur das letzte Ergebnis von data ist für alle.

Code: Alles auswählen

import odbAccess
odb = session.openOdb('j00_03.odb')
lastFrame = odb.steps['Step-1'].frames[-1]
firstFrame = odb.steps['Step-1'].frames[0]
displacement = lastFrame.fieldOutputs['U']
coord = firstFrame.fieldOutputs['COORD']
Pipenode = odb.rootAssembly.instances['PART-1-1'].nodeSets['N_BAERING']
PipenodeDisp = displacement.getSubset(region=Pipenode)
PipenodeCoor = coord.getSubset(region=Pipenode)
myoutfile = open('tryout.txt','w+')
myoutfile.write('Node')
myoutfile.write('	x disp')
myoutfile.write('	y disp')
myoutfile.write('	z disp\n')
for v in PipenodeDisp.values:
 data = v.data[0],v.data[1],v.data[2]
 print data
for v in PipenodeCoor.values:
 data2 = v.nodeLabel,v.data[0],v.data[1],v.data[2]
 print data2 + data
 myoutfile.write (str(data2)+ ',' +str(data)+ '\n')
myoutfile.close()
odb.close() 
kann jemand mir ein Tip geben?
Zuletzt geändert von Anonymous am Mittwoch 15. Oktober 2014, 16:22, insgesamt 1-mal geändert.
Grund: Quelltext in Python-Code-Tags gesetzt.
BlackJack

@bjorn_kramp: Der Tipp wäre `itertools.izip()`.

Ein Blick in den Style Guide for Python Code könnte sich lohnen.

Der Dateimodus 'w+' ist hier falsch, das sollte nur 'w' sein.

Die Zeichenkettendarstellung von Listen oder Tupeln in eine Datei zu schreiben ist selten eine gute Idee.
Antworten