Finden von gleichen Zeichen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Feedback1000
User
Beiträge: 88
Registriert: Dienstag 20. September 2022, 21:21

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
geraldfo
User
Beiträge: 44
Registriert: Samstag 28. Januar 2023, 20:19
Wohnort: Nähe Wien

Den Inhalt von DELIMITER kann man erraten. Es wäre aber netter, wenn du diese Info mitliefern würdest.
Benutzeravatar
grubenfox
User
Beiträge: 411
Registriert: Freitag 2. Dezember 2022, 15:49

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?
Feedback1000
User
Beiträge: 88
Registriert: Dienstag 20. September 2022, 21:21

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)
Benutzeravatar
__blackjack__
User
Beiträge: 13003
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Feedback1000: Ist die betroffene Zeile die *erste* in der Datei? Funktioniert es wenn Du als Kodierung beim öffnen "utf-8-sig" verwendest?
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
Feedback1000
User
Beiträge: 88
Registriert: Dienstag 20. September 2022, 21:21

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
Feedback1000
User
Beiträge: 88
Registriert: Dienstag 20. September 2022, 21:21

__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
Antworten