ich arbeite an einem Detektor, der aus echtsprachlichen Sätzen die Wahrnehmungsart filtern und durch w1() für "optisch", w2() für "akustisch", w3() für "riechen", w4() für "tasten" und w5() für "schmecken" ersetzen soll.
Code: Alles auswählen
import re
sight_words = set(["sehen", "sehe", "siehst", "sieht", "seht", "gesehen", "sah", "sahst", "saht", "sahen", "erspähen", "erspähe", "erspähst", "erspäht", "erspähte", "erspähtest", "erspähten", "erspähtet", "spähen", "spähe", "spähst", "späht", "spähte", "spähtest", "spähten", "spähtet", "bemerken", "bemerke", "bemerkst", "bemerkt", "bemerkte", "bemerktest", "bemerkten", "bemerktet", "entdecken", "entdecke", "entdeckst", "entdeckt", "entdeckte", "entdecktest", "entdecktet", "entdeckten", "erblicken", "erblicke", "erblickst", "erblickt", "erblickte", "erblicktest", "erblicktet", "erblickten", "gewahren", "gewahre", "gewahrst", "gewahrt", "gewahrte", "gewahrtest", "gewahrten", "gewahrtet", "schauen", "schaue", "schaust", "schaut", "schaute", "schautest", "schauten", "schautet", "geschaut", "sichten", "sichte", "sichtest", "sichtet", "sichtete," "sichtetest", "sichteten", "sichtetet", "gesichtet" ])
hearing_words = set(["hören", "höre", "hörst", "hört", "hörte", "hörtest", "hörte", "hörten", "hörtet", "gehört", "Gehör", "lausche", "lauschst", "lauscht", "lauschen", "gelauscht", "lauschte", "lauschtest", "lauschten", "lauschtet", "horche", "horchst", "horcht", "horchen", "horchte", "horchtest", "horchten", "horchtet", "gehorcht", "Ohren", "vernehme", "vernehmst", "vernimmst", "vernimmt", "vernehmt", "vernehmen", "vernahm", "vernahmst", "vernahmen", "vernahmt", "vernommen" ])
smell_words = set(["riechen", "rieche", "riechst", "riecht", "roch", "rochst", "rochen", "rocht", "gerochen", "schnuppern", "schnuppere", "schnupperst", "schnuppert", "schnupperte", "schnuppertest", "schnuppertet", "schnupperten", "geschnuppert"])
touch_words = set(["tasten", "taste", "tastest", "tastet", "getastet", "tastete", "tastetest", "tasteten", "tastetet", "fühlen", "fühle", "fühlst", "fühlt", "gefühlt", "fühlte", "fühltest", "fühlten", "fühltet", "greife", "greifst", "greift", "begreifen", "begriffen", "begriff", "begriffst", "begrifft"])
taste_words = set(["schmecken", "schmecke", "schmeckst", "schmeckt", "schmeckte", "schmecktest", "schmeckten", "geschmeckt"])
# Hauptteil des Programms
sentence = input("Bitte geben Sie einen Satz ein: ")
words = sentence.split()
for i in range(len(words)):
word = words[i].strip(".,!?:;") # Entfernen Sie Zeichen am Ende des Wortes
if word in sight_words:
words[i] = re.sub(r'\b{}\b'.format(word), 'sight', words[i])
elif word in hearing_words:
words[i] = re.sub(r'\b{}\b'.format(word), 'hearing', words[i])
elif word in smell_words:
words[i] = re.sub(r'\b{}\b'.format(word), 'smell', words[i])
elif word in touch_words:
words[i] = re.sub(r'\b{}\b'.format(word), 'touch', words[i])
elif word in taste_words:
words[i] = re.sub(r'\b{}\b'.format(word), 'taste', words[i])
sentence = " ".join(words)
print(sentence)
Ich w1() das Auto." Halt ohne das angehängte "e", das von "sehe" stammt.
Leider komme ich nicht drauf, wo der Fehler liegen könnte. Seht ihr was?
1000 Dank im Voraus
von
Andreas