Zum Hauptinhalt springen
Version: 28Gj

Grüfnisch

Grüfnisch ist in der Schweiz unter Jugendlichen und Kindern eine verbreitete Spielsprache. Diese Sprache wird von vielen Kindern und Jugendlichen auch als Geheimsprache benutzt. Bei „Grüfnisch“ werden alle Vokale wie folgt ersetzt:1

a
anafa
e
enefe
i
inifi
o
onofo
u
unufu
ä
änäfä
ö
önöfö
ü
ünüfü

Beispiele

Hallo
Hanafallonofo
Gymnasium Biel Seeland
Gymnanafasinifiunufum Binifienefel-Senefeenefelanafand
Ziel: Python spricht Grüfnisch

Das Ziel ist, einen vorgegebenen Text auf Grüfnisch zu übersetzen.

In Python lassen sich Texte verändern, zusammenfügen und trennen.

Texte verknüpfen

Texte können verknüpft werden - entweder mit + oder indem eine spezielle Syntax für die Verknüpfung von Textteilen verwendet wird.

'hallo ' + 'bello'

Mit + lassen sich zwei gleichwertige Datentypen (daher, entweder zwei Zahlen, oder zwei Texte, nicht jedoch Texte und Zahlen, verknüpfen)

print('Hallo ' + 'Biber')

f'', f'Hallo, Nr. {7}'

Ein formatierter Text wird in Python mit f' (statt nur ') gestartet. Anschliessend können geschweifte Klammern verwendet werden, welche durch deren Inhalt ersetzt werden. Hier Spielt es keine Rolle, ob Texte oder Zahlen verwendet werden.

name = 'Maria'
print(f'Hallo {name}, ich bin {15} jährig.')

Gross- und Kleinschreibung

.upper(): Grossbuchstaben

text = 'Hallo ich bin Alfred. Ich schreibe an einem wichtigen Buch.'
gross = text.upper()

print(gross)

.lower(): Kleinbuchstaben

text = 'Hallo ich bin Alfred. Ich schreibe an einem wichtigen Buch.'
klein = text.lower()

print(klein)

Text ersetzen

.replace(alt, neu)

Mit replace(alt, neu) werden alle alten Textstücke durch die neuen ersetzt. Der Text wird dabei nicht direkt verändert, sondern nur der Rückgabewert (=das Resultat) ist verändert.

text = 'Hallo ich bin Alfred. Ich schreibe an einem wichtigen Buch.'

# Alle "." durch "!!!" ersetzen
text = text.replace('.', '!!!')

print(text)
Gross- & Kleinschreibung

Python nimmts genau beim ersetzen - die Gross- & Kleinschreibung spielt eine Rolle, nicht jedoch der Ort des alten Wortes!

Im folgenden Beispiel wird etwa nur das kleingeschriebene ich ersetzt, jedoch auch wenn es inmitten eines Textes auftritt. Das grossgeschrieben Ich zu Beginn des Satzes wird ignoriert...

text = 'Hallo ich bin Alfred. Ich schreibe an einem wichtigen Buch.'
text = text.replace('ich', 'ICH')

print(text)

Lösungen: (1) auch den Gross- und kleingeschriebenes ersetzen, oder (2) zuerst alles klein schreiben und dann ersetzen.

text = 'Hallo ich bin Alfred. Ich schreibe an einem wichtigen Buch.'

text = text.replace('ich', 'XXX') # Alle 'ich' durch XXX ersetzen
text = text.replace('Ich', 'XXX') # Alle 'Ich' durch XXX ersetzen
print(text)
text = 'Hallo ich bin Alfred. Ich schreibe an einem wichtigen Buch.'

text = text.lower() # text kleinschreiben
text = text.replace('ich', 'XXX') # Alle 'ich' durch XXX ersetzen
print(text)

Vervielfachen

Um Textteile zu vervielfachen, können diese mit einem Faktor 'multipliziert' werden.

print('❤️ ' * 5)

oder auch komplizierter:

for i in range(5):
print('❤️ ' * (i + 1))

Beispiel

Grüfnisch

Wie lautet der Satz Hallo, es ist Winter auf Grüfnisch? (Von Hand, ohne Programm übersetzen)

Deutsch → Grüfnisch
  1. Erstellen Sie ein Programm, welches einen Satz auf Grüfnisch übersetzt und ausgibt.

  2. Funktioniert Ihr Text auch, wenn Sie den Satz mit Grossbuchstaben, bspw. Informatikunterricht übersetzen? Passen Sie ihn entsprechen an.

  3. Um die Ausgabe etwas spannender zu machen, können wir die Ausgabe auch von Beavis ausgeben lassen. Ändern Sie Ihr Programm so, dass Beavis Grüfnisch spricht...

    from cowsay import beavis
    beavis('Hanafallonofo Pythonofon')
text = 'hallo, es ist winter!'
print('Original', text)

Weitere Figuren

Anstelle von cow() können auch andere Figuren verwendet werden. Diese muss dann aber auch aus der Bibliothek cowsay importiert werden.

  • beavis
  • cheese
  • daemon
  • cow
  • dragon
  • ghostbusters
  • kitty
  • meow
  • milk
  • stegosaurus
  • stimpy
  • turkey
  • turtle
  • tux

Zusatz ⭐️: Passen Sie Ihr Programm so an, dass auch die Zusatzregel bei Grüfnisch umgesetzt wird. Wie könnte dies gelingen?

Ausnahme beim Ersetzen: Bei Diphthongen/Zwielauten wird nur der erste verlängert (z. B. „au“ ⇒ „anafau“). Beispiel: "Bauen" hat den Diphtong au und wird also grüfnisch "Banafauenefen" ausgesprochen.

Laden...
Laden...
Laden...

Texte sprechen lassen

Mit der Bibliothek speech kann ein Text vom Browser gesprochen werden.

speak

from speech import speak

speak('Hallo, es ist Winter!')

Die Sprachausgabe kann angepasst werden:

speak('Hi there, i speak english now.', lang='en-US')
speak('Jetzt doppelt so schnell', lang='de-DE', rate=2)
speak('Jetzt halb so schnell', lang='de-DE', rate=0.5)
speak('Jetzt höher', lang='de-DE', pitch=2) # max 2
speak('Jetzt tiefer', lang='de-DE', pitch=0.1) # min 0.1
speak('Jetzt leiser', lang='de-DE', volume=0.5) # Werte zwischen 0 und 1, Standard ist 1

Es kann auch die Stimme verändert werden, wobei nicht jede Stimme in jedem Browser verfügbar ist.

from speech import speak, voices
voices('de-DE') # gibt die verfügbaren Stimmen aus
speak('Hallo, es ist Winter!', lang='de-DE', voice='Microsoft Katja - German (Germany)')

Die verfügbaren Sprachen können mit languages() ausgegeben werden.

from speech import speak, languages
languages()
Browser-Feature

Nicht jeder Browser unterstützt das Sprechen von Texten in allen Sprachen.

Text sprechen lassen

Versuchen Sie, den Grüfnisch-Text sprechen zu lassen. Verwenden Sie das bereits erstellte Programm und passen Sie es entsprechend an.

from speech import speak, voices, languages
Grüfnisch → Deutsch

Können Sie auch ein Programm schreiben, welches vom Grüfnisch ins Berndeutsch übersetzt?

text = 'Hanafallonofo Pythonofon'
Laden...

Footnotes

  1. Quelle: 👉 Wikipedia