PCEP-30-02 - PCEP - Certified Entry-Level Python Programmer Exam des Python Institute (OpenEDG)
PCEP-30-02 1.0 – Computerprogrammierung und Grundlagen von Python (18 %)
PCEP-30-02 1.1 - Grundlegende Begriffe und Definitionen verstehen
PCEP-30-02 1.2 – Logik und Struktur von Python verstehen
PCEP-30-02 1.3 – Literale und Variablen in Code einführen und verschiedene Zahlensysteme nutzen
PCEP-30-02 1.4 – Operatoren und Datentypen passend zum Problem wählen
PCEP-30-02 1.5 – Eingabe-/Ausgabe-Operationen in der Konsole durchführen
PCEP-30-02 2.0 – Kontrollfluss – Bedingte Blöcke und Schleifen (29%)
PCEP-30-02 2.1 – Entscheidungen treffen und den Programmfluss mit „if“ steuern
PCEP-30-02 2.2 – Verschiedene Arten von Iterationen durchführen
PCEP-30-02 3.0 – Datenkollektionen – Tupel, Dictionaries, Listen und Strings (25%)
PCEP-30-02 3.1 – Daten mit Listen sammeln und verarbeiten
PCEP-30-02 3.2 – Daten mit Tupeln sammeln und verarbeiten
PCEP-30-02 3.3 – Daten mit Dictionaries sammeln und verarbeiten
PCEP-30-02 3.4 – Mit Strings arbeiten
PCEP-30-02 4.0 – Funktionen und Ausnahmen (28%)
PCEP-30-02 4.1 – Code durch Funktionen modularisieren
PCEP-30-02 4.2 – Interaktion zwischen Funktion und Umgebung organisieren
PCEP-30-02 4.3 – Python Built-In Exceptions Hierarchie
PCEP-30-02 4.4 – Grundlagen der Fehlerbehandlung in Python
PCEP-30-02 – Prüfungssimulation
Python Übungsaufgabe: Plagiatssuche / Zeichenketten Suchfunktion (Musterlösung)
# Python-Code:
def durchsuche_zeichenkette(text, suchmuster):
"""
Die Funktion durchsucht einen Text nach einem Muster und gibt die Indizes mit der Position zurück
:param str text: Der Text, der durchsucht werden soll
:param str suchmuster: Muster, nach dem gesucht wird
:return: Liste mit Indizes der Vorkommen
:rtype: list
"""
try:
# Wurde ein zu durchsuchender Text übergeben?
if not text or type(text) is not str:
raise Exception
# Wurde ein Suchmuster übergeben?
if not suchmuster or type(suchmuster) is not str:
raise Exception
# Die Liste, die mit dien Indizes zurückgegeben werden soll
liste = []
# Durchsuche d den Text nach Plagiaten
letzter_index = 0
for i in range(text.count(suchmuster)):
letzter_index = text.index(suchmuster, letzter_index)
liste.append(letzter_index)
# Erhöhe den Wert um 1, damit beim nächsten Durchlauf nicht der gleiche Index verwendet wird.
letzter_index += 1
# Ausgabe der Liste
return liste
except:
# Kann auch index-Fehler sein
return []
# Beispielaufruf
print(durchsuche_zeichenkette('Die beste Plagiatssoftware, die Sie je finden werden!', 'ie'))