folgendes Problem:
Das von mir zu schreibende Programm soll in der Lage sein aus mehreren definierten Ordnern nur die XML Dateien (jede XML hat den gleichen Aufbau) zu wählen und daraus spezielle Werte (klappt soweit)...
nun schreibt das Programm für jede XML-Datei eingene Listen (siehe Quellcode) ... ich möchte aber gerne, dass alle Listen für z.B. R1I1o in der gleichnamigen Liste abgespeichert werden, sprich; das Programm soll alle Einzellisten von R1I1o in eine Gesamtliste R1I1o packen, um sie anschließend seperat bearbeiten zu können.
Kann mir da jemand weiter helfen??
Code: Alles auswählen
def process(insert_file):
xml = open(insert_file, "r")
data = xml.readlines()
xml.close()
R1I1o=[]
R2I1o=[]
R3I1o=[]
R4I1o=[]
R1I1t=[]
R2I1t=[]
R3I1t=[]
R4I1t=[]
R1I2o=[]
R2I2o=[]
R3I2o=[]
R4I2o=[]
R1I2t=[]
R2I2t=[]
R3I2t=[]
R4I2t=[]
num_liste = str(enumerate(data)) # string as tuple fixed to i
for i, wert in enumerate(data): # get value of interest
if i == 25: # filter
status = wert
status = status.strip()
status = str(status[27:32])
if status == "Error":
print status
break
else:
for i, wert in enumerate(data):
if i == 77: # co R1 I1
c11_off = wert
c11_off = c11_off.strip()
c11_off = (c11_off[6:9])
R1I1o.append(c11_off)
if i == 89: # ct R1 I1
c11_tre = wert
c11_tre = c11_tre.strip()
c11_tre = (c11_tre[6])
R1I1t.append(c11_tre)
if i == 104: # co R2 I1
c21_off = wert
c21_off = c21_off.strip()
c21_off = (c21_off[6:9])
R2I1o.append(c21_off)
if i == 116: # ct R2 I1
c21_tre = wert
c21_tre = c21_tre.strip()
c21_tre = (c21_tre[6])
R2I1t.append(c21_tre)
if i == 131: # co R3 I1
c31_off = wert
c31_off = c31_off.strip()
c31_off = (c31_off[6:9])
R3I1o.append(c31_off)
if i == 143: # ct R3 I1
c31_tre = wert
c31_tre = c31_tre.strip()
c31_tre = (c31_tre[6:8])
R3I1t.append(c31_tre)
if i == 158: # co R4 I1
c41_off = wert
c41_off = c41_off.strip()
c41_off = (c41_off[6:9])
R4I1o.append(c41_off)
if i == 170: # ct R4 I1
c41_tre = wert
c41_tre = c41_tre.strip()
c41_tre = (c41_tre[6:9])
R4I1t.append(c41_tre)
if i == 199: # co R1 I2
c12_off = wert
c12_off = c12_off.strip()
c12_off =(c12_off[6:9])
R1I2o.append(c12_off)
if i == 211: # ct R1 I2
c12_tre = wert
c12_tre = c12_tre.strip()
c12_tre = (c12_tre[6])
R1I2t.append(c12_tre)
if i == 226: # co R2 I2
c22_off = wert
c22_off = c22_off.strip()
c22_off = (c22_off[6:9])
R2I2o.append(c22_off)
if i == 238: # ct R2 I2
c22_tre = wert
c22_tre = c22_tre.strip()
c22_tre = (c22_tre[6])
R2I2t.append(c22_tre)
if i == 253: # co R3 I2
c32_off = wert
c32_off = c32_off.strip()
c32_off = (c32_off[6:9])
R3I2o.append(c32_off)
if i == 265: # ct R3 I2
c32_tre = wert
c32_tre = c32_tre.strip()
c32_tre = (c32_tre[6:8])
R3I2t.append(c32_tre)
if i == 280: # co R4 I2
c42_off = wert
c42_off = c42_off.strip()
c42_off = (c42_off[6:9])
R4I2o.append(c42_off)
if i == 292: # ct R4 I2
c42_tre = wert
c42_tre = c42_tre.strip()
c42_tre = (c42_tre[6:9])
R4I2t.append(c42_tre)
print R1I1o, R1I1t, R2I1o, R2I1t, R3I1o, R3I1t, R4I1o, R4I1t, R1I2o, R1I2t, R2I2o, R2I2t, R3I2o, R3I2t, R4I2o, R4I2t
input = sys.argv[1].strip(chr(34))
flagRecursive = True
outputList = []
if flagRecursive == True:
for root, dirs, files in os.walk(input):
outputList.append(root)
for f1 in files:
outputList.append('/'.join([root, f1]))
else:
outputList = os.listdir(".")
filepattern = re.compile(".*xml$", re.IGNORECASE)
for item in outputList:
if filepattern.match(item) and os.path.isfile(item):
process(item)
os._exit(0)
Grüße
Julian