Advertisement
Guest User

Untitled

a guest
Aug 12th, 2016
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.69 KB | None | 0 0
  1. import csv, os, operator
  2.  
  3. os.makedirs('Sortiert', exist_ok=True)
  4.  
  5.  
  6. #for Schleife geht jedes Dokument des Pfades durch und bearbeitet nur die,
  7. # welches .csv Dokumente sind.
  8. for csvBlatt in os.listdir('.'):
  9. if not csvBlatt.endswith('.csv'):
  10. continue
  11. # Nur KS Files werden sortiert. Möglichkeit der Aufspaltung in Ordner auch gegeben!
  12. if 'KS' not in csvBlatt:
  13. continue
  14. #Temporäres Array, das gefüllt und nachher in ein neues Dok kopiert wird.
  15. zwischenTabelle = []
  16. aktuellesBlatt = open(csvBlatt)
  17. #Überspringt Header, wird nicht mitsortiert oder kopiert
  18. next(aktuellesBlatt)
  19. reader = csv.reader(aktuellesBlatt, delimiter = ',')
  20. #Nur zur Kontrolle:
  21. #print('Aktuell untersucht: ' + csvBlatt)
  22. #Tabelle wird der Größe nach Geordnet, nach Werten der Spalte 'F'
  23. sortiertesBlattX = sorted(reader, key = lambda x:float(x[5]))
  24. #Endgültige Sortierung, nach Spalte 'G'
  25. sortiertesBlatt = sorted(sortiertesBlattX, key = lambda x:float(x[6]))
  26. for row in sortiertesBlatt:
  27. #print(row)
  28. #Fügt die sortierten Zeilen dem temporären Array zu
  29. zwischenTabelle.append(row)
  30. #print("\n"*5)
  31. #print(zwischenTabelle)
  32. aktuellesBlatt.close()
  33. aktuellesBlatt = open(os.path.join('Sortiert', csvBlatt), 'w', newline ='')
  34. writer = csv.writer(aktuellesBlatt)
  35. writer.writerow(['Name','Abw','Status','Obere Tol','Untere Tol', 'Ref X', 'Ref Y', 'Ref Z', 'Radius', 'Abw X', 'Abw Y', 'Abw Z', 'Gemessen X', 'Gemessen Y', 'Gemessen Z', 'Proj. Richtung X', 'Proj. Richtung Y', 'Proj. Richtung Z'])
  36. for row in zwischenTabelle:
  37. writer.writerow(row)
  38. aktuellesBlatt.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement