read_data.py 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. import csv
  2. import re
  3. def read_dimensions(file_out, num):
  4. with open(file_out) as csv_file:
  5. csv_reader = csv.reader(csv_file, delimiter=';')
  6. line_count = 0
  7. durchmesser = False
  8. vorzeichen1 = "nix"
  9. is2vorzeichen = False
  10. vorzeichen2 = "nix"
  11. isos = []
  12. dimensions = []
  13. for row in csv_reader:
  14. line_count += 1
  15. if "ISO" in row[num]:
  16. isos.append(row[num])
  17. if durchmesser:
  18. #print("Durchmesser: " + row[1])
  19. dimensions.append("Durchmesser: " + row[num])
  20. durchmesser = False
  21. continue
  22. if row[num] == "%%c":
  23. durchmesser = True
  24. if vorzeichen1 != "nix" and (row[num] == "-" or row[num] == "+"):
  25. is2vorzeichen = True
  26. vorzeichen2 = row[num]
  27. continue
  28. if row[num] == "-" or row[num] == "+":
  29. vorzeichen1 = row[num]
  30. continue
  31. isnumber = re.findall(r"\d*\,\.\d+", row[num]) #regex to get number out of line
  32. if isnumber:
  33. if vorzeichen1 != "nix":
  34. #print(vorzeichen + isnumber[0])
  35. dimensions.append(vorzeichen1 + isnumber[0])
  36. else:
  37. if row[num][0]!="?":
  38. #print(isnumber[0])
  39. dimensions.append(isnumber[0])
  40. if is2vorzeichen == True:
  41. vorzeichen1 = "nix"
  42. if row[num][0] == "?":
  43. #print("+/- " + row[1][1:])
  44. dimensions.append("+/- " + row[num][1:])
  45. print(isos)
  46. print(dimensions)
  47. print(f'Processed {line_count} lines.')
  48. dim = []
  49. dim_count = 0
  50. for x in dimensions:
  51. if x == "Durchmesser: ":
  52. dim_count = 0
  53. if dim_count > 2:
  54. dim_count = 0
  55. if dim_count == 0:
  56. print("Maße: " + "\n" + x)
  57. dim_count += 1
  58. continue
  59. if dim_count == 1:
  60. print("Toleranzen: " + "\n" + x)
  61. dim_count += 1
  62. if "+/-" in x:
  63. dim_count += 1
  64. continue
  65. if dim_count == 2:
  66. print(x)
  67. dim_count += 1
  68. continue