Files
Masterprojekt-Campusnetz/Vorbereitungen_Fabian/Import_Tachymeter.py

55 lines
2.3 KiB
Python

from pathlib import Path
# ToDo mit Import.py verknüpfen! string_to_float dort original
def string_to_float(zahl):
zahl = zahl.replace(',', '.')
return float(zahl)
pfad_script = Path(__file__).resolve().parent
pfad_datei = pfad_script.parent / "Daten" / "campusnetz_beobachtungen_25_11 - Kopie.csv"
nummer_zielpunkt = 0
with (open(pfad_datei, "r", encoding="utf-8") as f):
liste_fehlerhafte_zeile = []
for i, zeile in enumerate(f):
if i < 3:
continue
zeile = zeile.strip().split(";")
if len(zeile) == 2:
print("Standpunkt: ",zeile[0])
if nummer_zielpunkt % 6 != 0:
liste_fehlerhafte_zeile.append(i)
nummer_zielpunkt = 0
liste_zielpunkte_hs = []
liste_zielpunkte_vs2 = []
liste_zielpunkte_vs3 = []
else:
nummer_zielpunkt += 1
if zeile[0] not in liste_zielpunkte_hs:
liste_zielpunkte_hs.append(zeile[0])
if zeile[0] in liste_zielpunkte_vs3:
print(f"{nummer_zielpunkt} VS3 HS1 {zeile[:-1]}")
elif zeile[0] in liste_zielpunkte_vs2:
print(f"{nummer_zielpunkt} VS2 HS1 {zeile[:-1]}")
else:
print(f"{nummer_zielpunkt} VS1 HS1 {zeile[:-1]}")
else:
liste_zielpunkte_hs.remove(zeile[0])
if zeile[0] in liste_zielpunkte_vs3:
print(f"{nummer_zielpunkt} VS3 HS2 {zeile[:-1]}")
elif zeile[0] in liste_zielpunkte_vs2:
if zeile[0] not in liste_zielpunkte_vs3:
liste_zielpunkte_vs3.append(zeile[0])
print(f"{nummer_zielpunkt} VS2 HS2 {zeile[:-1]}")
else:
if zeile[0] not in liste_zielpunkte_vs2:
liste_zielpunkte_vs2.append(zeile[0])
print(f"{nummer_zielpunkt} VS1 HS2 {zeile[:-1]}")
if liste_fehlerhafte_zeile == []:
print(f"Einlesen der Datei {pfad_datei} erfolgreich beendet.")
else:
print(f"Das Einlesen der Datei {pfad_datei} wurde abgebrochen.\nBitte bearbeiten Sie die Zeilen rund um: {", ".join(map(str, liste_fehlerhafte_zeile))} in der csv-Datei und wiederholen Sie den Import.")