Seite 1 von 1

Finden von gleichen Zeichen

Verfasst: Samstag 4. Februar 2023, 12:59
von Feedback1000
Hallo. Kann mir jemand verraten, warum der 'Verein' 'Bahn' fehlt?

Code: Alles auswählen

Vereine: Bahn;
Objektcode;Objektname
Bahngelaende_F;Bahngelaende_F
Bahnhof_F;Bahnhof_F
Gleisbett_F;Gleisbett_F
Haltest_Bahn_F;Haltestelle_Bahn_F
Gleis_Achse_L;Bahngleis_Achse_L
Gleis_L;Bahngleis_einzeln_L
Fahrzielanzeiger;Fahrzielanzeiger_Haltestelle_P
Haltest-Bahn_Schild;Haltestelle_Bahn_Schild_P
Kilometer-zeichen_Bahn;Kilometerzeichen_Bahn_P
Mast_Fahrdraht;Mast_fuer_Fahrdraht_P
Prellbock;Prellbock_P
Schranke_Drehpkt;Schranke-Drehpunkt_P
Warnbake;Warnbake_P
Warnkreuz;Warnkreuz_P
;
Vereine: Bauwerk;
Objektcode;Objektname
Bruecke_F;Bruecke_F
Brueckenpfeiler_F;Brueckenpfeiler_F
Mauer_F;Mauer_F
Mauer_L;Mauer_L
Rampe_F;Rampe_F
Rampe_L;Rampe_L
Saeule_F;Saeule_eckig/rund_F
Saeule_P;Saeule_eckig/rund_P
Stuetzmauer_F;Stuetzmauer_F
Stuetzmauer_L;Stuetzmauer_L
Treppe_Bauw_F;Treppe_Bauwerk_F
Treppe_Bauw_L;Treppe_Bauwerk_L
Ueberdachung-Bauw_F;Ueberdachung_Bauwerk_F
Widerlager_F;Widerlager_F
Zaun_L;Zaun_rechts/links_L
;
Vereine: Gebaeude;
Objektcode;Objektname
Arkade_F;Arkade_F
Auskr./Zuruecksp-Geschosse_F;Ausk./Zurueckspr_Geschosse_F
Durchfahrt_Geb_L;Durchfahrt_im_Gebaeude_L
Durchfahrt_Geb_F;Durchfahrt_im_Gebaeude_F
Einfahrt_Geb_F;Ein-/Ausfahrt_Gebaeude_F
Gebaeudeecke;Gebaeudeecke_P
Laderampe_F;Laderampe_F
Lichtschacht_P;Lichtschacht_P
Lichtschacht_F;Lichtschacht_F
Passage_F;Passage_F
Saeule_Geb_F;Saeule_eckig/rund_Gebaeude_F
Saeule_Geb_P;Saeule_eckig/rund_Gebaeude_P
Terrasse/Balkon_F;Terrasse/Balkon_F
Treppe_Geb_F;Treppe_Gebaeude_F
Ueberdachung-Gebaeude_L;Ueberdachung_Gebaeude_L
Ueberdachung-Gebaeude_F;Ueberdachung_Gebaeude_F
Geschoss-wechsel_L;Geschosswechsellinie_L
Aufzug_Geb_F;Aufzug_Gebaeude_F
;
Vereine: Gelaende;
Objektcode;Objektname
Boeschung_OK_L;Boeschung_OK_L
Boeschung_UK_L;Boeschung_UK_L
Gelaendekante_L;Gelaendekante_L
Findling;Findling_P
Fahrbahnk_3D_L;Fahrbahnkante_3D_L
Punkt_3D;Punkt_3D
Topolinie;Topolinie
;
Vereine: Gewässer;
Objektcode;Objektname
Durchlass_F;Durchlass_F
Durchlass_L;Durchlass_L
Durchlass_P;Durchlass_P
Gewaesser_F;Gewaesser_F
Grundwassermess-stelle;Grundwassermessstelle_P
Klaerbecken_F;Klaerbecken_F
Pegel;Pegel_P
Rueckhalteb_F;Rueckhaltebecken_F
Rueckhalteb_L;Rueckhaltebecken_L
Sumpf_F;Sumpf/Bruch_F
Uferlinie;Uferlinie_L
Ufermauer_F;Ufermauer/Kaimauer_F
Ufermauer_L;Ufermauer/Kaimauer_L
Wehr_F;Wehr_F
Wehr_L;Wehr_L
;
Vereine: Siedlung_F_L;
Objektcode;Objektname
Brunnen_F;Brunnen/Springbrunnen_F
Brunnen_L;Brunnen/Springbrunnen_L
Denkmal_F;Denkmal_F
Denkmal_L;Denkmal_L
Fahrradstellpl_F;Fahrradstellplaetze_F
Gelaender_L;Gelaender/Balustrade_L
Muellbox_F;Muellboxenanlage_F
Paketkasten_F;Paketkasten/Packstation_F
Sitzbank_F;Sitzbank_F
Sitzbank_L;Sitzbank_L
Spielplatz_F;Spielplatz_F
Spielplatz_L;Spielplatz_L
;
Vereine: Siedlung_P;
Objektcode;Objektname
Anschlagsaeule;Anschlagsaeule_P
Automat;Automat_P
Briefkasten;Briefkasten_P
Brunnen_P;Brunnen/Springbrunnen_P
Denkmal_P;Denkmal_P
Fahrradbuegel;Fahrradbuegel_P
Hinweistafel/-zeichen;Hinweistafel/-zeichen_P
Ladestation;Ladestation_E-Mobil_P
Merkzeichen;Merkzeichen_P
Muellbox_P;Muellbox_P
Poller;Poller_P
Sitzbank_P;Sitzbank_P
Uhr;Uhr_P
Verkehrszeichen;Verkehrszeichen_P
Wegweiser;Wegweiser_P
Fahnenmast;Fahnenmast_P
Fernsprechstelle;Fernsprechstelle_P
Kilometerstein;Kilometerstein/-tafel_P
Kommunikations-einrichtung;Kommunikationseinrichtung_P
Paketkasten_P;Paketkasten/Packstation_P
Schaukasten_P;Schaukasten_P
Schilderbruecke;Schilder-/Ampelbruecke_P
;
Vereine: Strasse;
Objektcode;Objektname
Fahrweg_F;Fahr-/Wirtschaftsweg_F
Fahrbahn_F;Fahrbahn_F
Fahrbahnkante_L;Fahrbahnkante_L
Fussweg_F;Fussweg_F
Haltest_Bus_F;Haltestelle_Bus_F
Haltest-Bus_Schild;Haltestelle_Bus_Schild_P
Leitplanke_L;Leitplanke_L
Parkplatz_F;Parkplatz_F
Platz_F;Platz_F
Rad-/Fussweg_F;Rad-/Fussweg_F
Radweg_F;Radweg_F
Stellplatz_F;Stellplatz_F
Verkehrsinsel_F;Verkehrsinsel_F
Borde_oben_L;Borde_oben_L
Borde_unten_L;Borde_unten_L
;
Vereine: Technische_Elemente_F_L;
Objektcode;Objektname
Ablauf_F;Ablauf_Platz/Rinne_F
Ablauf_L;Ablauf_Platz/Rinne_L
Gasregler_F;Gasregler_F
Mast_F;Mast_F
Pumpe_L;Pumpe_L
Schacht_F;Schacht_F
Schaltkasten_F;Schaltkasten_F
Umformer_F;Umformer_F
;
Vereine: Technische_Elemente_P;
Objektcode;Objektname
Ablauf_P;Ablauf_Platz/Rinne_P
Sinkkasten;Sinkkasten_P
Ampel;Ampel_P
Bodenleuchte;Bodenleuchte_P
Gaswassertopf;Gaswassertopf_P
Heizungsdeckel;Heizungsdeckel_P
Hydrant;Hydrant_P
Leuchte;Leuchte_P
Leuchtsaeule;Leuchtsaeule_P
Lueftungsarmatur;Lueftungsarmatur_P
Mast_P;Mast_P
Pumpe_P;Pumpe_P
Schacht_P;Schacht_P
Schaltkasten_P;Schaltkasten_P
Schieber;Schieber_P
Abscheider;Abscheider_P
Abzug_FW;Abzug_Fernwaerme_P
Gasregler_P;Gasregler_P
Laterne/Kandelaber;Laterne/Kandelaber_P
Rohreinr;Rohreinrichtung_P
Scheinwerfer;Scheinwerfer_P
Umformer_P;Umformer_P
Verkehrsschalt-einrichtung;Verkehrsschalteinrichtung_P
;
Vereine: Vegetation_F;
Objektcode;Objektname
Baumbestand_F;Baumbestand_F
Gebuesch_F;Gebuesch_F
Gehoelz_F;Gehoelz_F
Gras_F;Gras_F
Gruenanlage_F;Gruenanlage_F
Gruenfl_F;Gruenflaeche_F
Gruenfl_Baeume_F;Gruenflaeche_mit_Baeumen_F
Hecke_F;Hecke_F
Landwirtschaft_F;Landwirtschaft/Acker-/Gruenland_F
Park_F;Park_F
;
Vereine: Vegetation_P_L;
Objektcode;Objektname
Laubbaum;Laubbaum_P
Nadelbaum;Nadelbaum_P
Gebuesch_P;Gebuesch_einzeln_P
Baumbestand_L;Baumbestand_L
Baumreihe_L;Baumreihe_L
Gebuesch_L;Gebuesch_L
Gruenanlage_L;Gruenanlage_L
Gruenfl_Baeume_L;Gruenflaeche_mit_Baeumen_L
Gruenfl_L;Gruenflaeche_L
Hecke_L;Hecke_mittig_L
Park_L;Park_L

Code: Alles auswählen

def lade_gruppenliste(dateipfad):
    vereine = {}
    with dateipfad.open('r', encoding='utf-8') as gruppen:
        for zeile in gruppen:
            objektcode, _, objektname = zeile.rstrip().partition(DELIMITER)
            if objektcode.startswith('Vereine'):
                vereins_initial, _, vereins_name = objektcode.rstrip().partition(': ')
                vereine[vereins_name] = None
                # print(objektcode, objektname)
    pprint(vereine)
    return

Re: Finden von gleichen Zeichen

Verfasst: Samstag 4. Februar 2023, 13:15
von geraldfo
Den Inhalt von DELIMITER kann man erraten. Es wäre aber netter, wenn du diese Info mitliefern würdest.

Re: Finden von gleichen Zeichen

Verfasst: Samstag 4. Februar 2023, 13:30
von grubenfox
Was steht denn in den Variablen zeile und objektcode wirklich drin?
Und wenn der der 'Verein' 'Bahn' fehlt, welche fehlen denn in der Ausgabe nicht?

Re: Finden von gleichen Zeichen

Verfasst: Samstag 4. Februar 2023, 13:48
von Feedback1000
Hier der relevante Code-Ausschnitt:

Code: Alles auswählen

from pprint import pprint
from pathlib2 import Path
import time

DELIMITER = ';'
PFAD_DATEIEN = Path(
    r'C:\Firma\Projekte (aktuell)\2021-10-08_P_Konfiguration\Pflichtenheft Stadt Leipzig_neu'
)

DATEINAME_GRUPPENLISTE = 'Gruppenliste.csv'
GRUPPENLISTE_NOT_NEED = ('Objektcode', ' ')


def lade_gruppenliste(dateipfad):
    vereine = {}
    with dateipfad.open('r', encoding='utf-8') as gruppen:
        for zeile in gruppen:
            objektcode, _, objektname = zeile.rstrip().partition(DELIMITER)
            if objektcode.startswith('Vereine'):
                vereins_initial, _, vereins_name = objektcode.rstrip().partition(': ')
                vereine[vereins_name] = None
                # print(objektcode, objektname)
    pprint(vereine)
    return


lade_gruppenliste(PFAD_DATEIEN / DATEINAME_GRUPPENLISTE)

Re: Finden von gleichen Zeichen

Verfasst: Samstag 4. Februar 2023, 14:56
von __blackjack__
@Feedback1000: Ist die betroffene Zeile die *erste* in der Datei? Funktioniert es wenn Du als Kodierung beim öffnen "utf-8-sig" verwendest?

Re: Finden von gleichen Zeichen

Verfasst: Samstag 4. Februar 2023, 15:05
von Feedback1000
Habe den Fehler gefunden: es lag an der Codierung der CSV an sich: war UFT-8-BOM (warum auch immer). Jetzt mit UFT-8 passt alles.
Die Datei war ursprünglich mal aus Excel exportiert worden - da ist bestimmt ein falsches 'Speichern unter' ausgewählt worden...
Danke trotzdem

Re: Finden von gleichen Zeichen

Verfasst: Samstag 4. Februar 2023, 15:07
von Feedback1000
__blackjack__ hat geschrieben: Samstag 4. Februar 2023, 14:56 @Feedback1000: Ist die betroffene Zeile die *erste* in der Datei? Funktioniert es wenn Du als Kodierung beim öffnen "utf-8-sig" verwendest?
Sorry, zu spät gesehen. Dank auch an dich