Ergänzen Sie das Python-Programm,unten, so dass bestimmte Zeichen in einem String austauscht. Dazu sollen Sie eine Funktion exchangeChars() mit zwei Parameters definieren. Der erste Paramter soll ein string sein, in dem die Zeichen ausgetauscht werden sollen. Der zweite Parameter soll ein Dictionary sein. Die Schlüssel sind dabei die Zeichen, welche ausgetauscht werden sollen und die zugehörigen Werte die Zeichen die als Ersatz verwendet werden sollen. Sie können den folgenden Testfall verwenden, um Ihre Funktion zu überprüfen. Ihre Funktion soll aber allgemein auch andere durch ein Dictionary gegebene Zeichenersetzungen vornehmen können.
Testfall:
exchangeTable = {"a":"e", "i":"e", "o":"e"} # Anlegen des dict
print(exchangeChars("Drei Studenten mit dem Kontrabass.", exchangeTable))
# Führt zur Ausgabe: Dree Studenten met dem Kentrebess.
def exchangeChars(text, exchangeTable):
result = "".join(exchangeTable.get(char, char) for char in text)
return result
# Testfall
exchangeTable = {"a": "e", "i": "e", "o": "e"} # Anlegen des dict
print(exchangeChars("Drei Studenten mit dem Kontrabass.", exchangeTable))
Python unterscheidet _____ zwischen Groß- und Kleinschreibung.
Python unterscheidet _____ zwischen Groß- und Kleinschreibung.
Einrückungen in Python _____.
Einrückungen in Python _____.
In Python dürfen Leerzeichen nicht beliebig zur (optischen) Gliederung des Quelltextes verwendet werden, da sie z.B. in Form von Einrückungen die Struktur eines Programms bestimmen.
In Python dürfen Leerzeichen nicht beliebig zur (optischen) Gliederung des Quelltextes verwendet werden, da sie z.B. in Form von Einrückungen die Struktur eines Programms bestimmen.
Wie nennt man die kleinsten sinngebenden Elemente im Quellcode eines Programms?
Wie nennt man die kleinsten sinngebenden Elemente im Quellcode eines Programms?
Welches Trennzeichen können Sie mit dem Parameter sep= anpassen?
Welches Trennzeichen können Sie mit dem Parameter sep= anpassen?
Die Anweisungsfolge a = 1 b = "2" print(a + b); liefert _____.
Die Anweisungsfolge a = 1 b = "2" print(a + b); liefert _____.
Welchen Typ hat eine Variable, der der Wert 1.0 zugewiesen wird?
Welchen Typ hat eine Variable, der der Wert 1.0 zugewiesen wird?
Welcher Variablenname ist in Python gültig?
Welcher Variablenname ist in Python gültig?
Untersuchen Sie die unten angegebene Funktion und bearbeiten Sie die folgenden Aufgaben:
def myst(a):
b = False
c = False
for d in a:
if d.isupper():
b = True
elif d.islower():
c = True
return b and c
def contains_upper_and_lower(text: str) -> bool:
"""
Überprüft, ob der gegebene String min. einen Großbuchstaben und einen Kleinbuchstaben enthält.
Parameter: text (str): Der zu überprüfende String.
Rückgabewert: bool: True, wenn der String sowohl Groß- als auch Kleinbuchstaben enthält, sonst False.
"""
has_upper = False
has_lower = False
for char in text:
if char.isupper():
has_upper = True
elif char.islower():
has_lower = True
return has_upper and has_lower
# Testfälle
print(contains_upper_and_lower("Hello")) # True
print(contains_upper_and_lower("HELLO")) # False
print(contains_upper_and_lower("hello")) # False
print(contains_upper_and_lower("123Abc")) #True
Mit welchem Operator führt Python eine Ganzzahldivision aus?
Mit welchem Operator führt Python eine Ganzzahldivision aus?
Operatoren mit gleicher Rangfolge werden _____ ausgewertet.
Operatoren mit gleicher Rangfolge werden _____ ausgewertet.
Mit dem Operator is lässt sich feststellen, ob zwei _____ gleich sind.
Mit dem Operator is lässt sich feststellen, ob zwei _____ gleich sind.
Welches Ergebnis liefert die Anweisung print(int("4") == 4)?
Welches Ergebnis liefert die Anweisung print(int("4") == 4)?
Die Bedingung einer while-Schleife wird _____ ausgewertet.
Die Bedingung einer while-Schleife wird _____ ausgewertet.
Die nach einem Bedingungsausdruck auszuführenden Anweisungen werden durch _____ vom Bedingungsausdruck getrennt.
Die nach einem Bedingungsausdruck auszuführenden Anweisungen werden durch _____ vom Bedingungsausdruck getrennt.
Die Anweisung break _____.
Die Anweisung break _____.
Mit welchem Schlüsselwort definieren Sie eigene Funktionen?
Mit welchem Schlüsselwort definieren Sie eigene Funktionen?
Mit Dictionaries ist es möglich, _____.
Mit Dictionaries ist es möglich, _____.
Mit welcher Methode lässt sich ein Element an einem bestimmten Index aus einer Liste entfernen?
Mit welcher Methode lässt sich ein Element an einem bestimmten Index aus einer Liste entfernen?
Objekte sind _____ einer Klasse.
Objekte sind _____ einer Klasse.
Vererbung heißt, dass Eigenschaften und Methoden _____.
Vererbung heißt, dass Eigenschaften und Methoden _____.
▪ Für welche Werte ist der Ausdruck (digit_1 == 8 or 9) gleich False?
a) digit_1 = 8
b) digit_1 = 9
c) digit_1 = 1
d) für keinen der genannten
▪ Für welche Werte ist der Ausdruck (digit_1 == 8 or 9) gleich False?
a) digit_1 = 8
b) digit_1 = 9
c) digit_1 = 1
d) für keinen der genannten.
▪ Für welche Werte ist der Ausdruck (digit_1 == 8 or 9) gleich True?
a) digit_1 = 8
b) digit_1 = 9
c) digit_1 = 1
d) für keinen der genannten
▪ Für welche Werte ist der Ausdruck (digit_1 == 8 or 9) gleich True?
a) digit_1 = 8
b) digit_1 = 9
c) digit_1 = 1
d) für keinen der genannten
Welche Anweisung führt zur Ausgabe [4,3,2]
aList = [1, 2, 3, 4]
Für jede Aussage muss entschieden werden: [richtig] oder [falsch]
Welche Anweisung führt zur Ausgabe [4,3,2]
aList = [1, 2, 3, 4]
Richtig
print(aList[-1:0:-1])
print(aList[3:0:-1])
falsch
print(aList[-1:-5:-1])
print(aList[4:1:-1])
Welche Anweisung führt zur Ausgabe [1,2,3]
aList = [1, 2, 3, 4]
Für jede Aussage muss entschieden werden: [richtig] oder [falsch]
Welche Anweisung führt zur Ausgabe [1,2,3]
aList = [1, 2, 3, 4]
Richtig
print(aList[0:3])
print(aList[:-1])
falsch
print(aList[:2])
print(aList[1:3])
Welche Anweisung führt zur Ausgabe [2,3,4]
aList = [1, 2, 3, 4]
Für jede Aussage muss entschieden werden: [richtig] oder [falsch]
Welche Anweisung führt zur Ausgabe [2,3,4]
aList = [1, 2, 3, 4]
Richtig
print(aList[1:4])
print(aList[1:])
falsch
print(aList[:-1])
print(aList[2:4])
aList = [1, 2, 3, 4]


3. Welche Anweisung gibt aList = [20, 30, 40] aus
aList = [10, 20, 30, 40]
a) print( aList [ :-1])
b) print( aList [1 : 4])
c) print( aList [1 : 3])
d) print( aList [2 : 4])
3. Welche Anweisung gibt aList = [20, 30, 40] aus
aList = [10, 20, 30, 40]
a) print( aList [ :-1])
b) print( aList [1 : 4])
c) print( aList [1 : 3])
d) print( aList [2 : 4])
4. Was gibt folgender Code aus?
sampleList = [10, 20, 30, 40, 50]
sampleList.pop()
sampleList.pop(2)
print(sampleList)
4. Was gibt folgender Code aus?
sampleList = [10, 20, 30, 40, 50]
sampleList.pop() -> entfernt das letzte Element der Liste
sampleList.pop(2) -> enfernt Element an Index 2
print(sampleList)
Ausgabe [10, 20, 40]
Was ist die Ausgabe? Begründe!
def mystery(set1, liste, value):
set1.add(value)
liste = liste + [value]
print(set1)
print(liste)
s = {1, 3, 5}
lst = [2, 4]
mystery(s, lst, 6)
print(s)
print(lst)
set1.add(value) -> fügt 6 zu s hinzu
liste = liste + [value] -> erstellt eine neue Liste lokal, ursprüngliche bleibt unberührt
Ausgabe:
{1, 3, 5, 6}
[2, 4, 6]
{1, 3, 5, 6}
[2, 4]
Was ist die Ausgabe? Begründe!
def mystery(set1, lst, value):
s.add(value)
liste += [value]
s = {1, 3, 5}
lst = [2, 4]
mystery(s, lst, 6)
print(s)
print(lst)
set und list sind mutable
s.add(value) verändert direkt
liste += [value] verändert die ursprüngliche Liste.
Ausgabe:
{1, 3, 5, 6}
[2, 4, 6]
Ordnen Sie die Ausgaben den Anweisungen zu. Die Anweisungen werden am Ende des Programms ausgeführt.
lst1 = ["a", "b"]
lst2 = lst1[:]
lst1 += "c"
lst1.append("d")
print(lst1)
print(lst2)
lst1 = ["a", "b"]
lst2 = lst1[:]
lst1 += "c"
lst1.append("d")
print(lst1) -> ['a', 'b', 'c', 'd']
print(lst2) -> ['a', 'b']
[:] erstellt eine Kopie, ohne [:] hat lst1 und lst2 gleiche Identität
Ordnen Sie die Ausgaben den Anweisungen zu. Die Anweisungen werden am Ende des Programms ausgeführt.
lst1 = ["a", "b"]
lst2 = lst1
lst1 += "c"
lst1.append("d")
print(lst1)
print(lst2)
lst1 = ["a", "b"]
lst2 = lst1
lst1 += "c"
lst1.append("d")
print(lst1) -> ['a', 'b', 'c', 'd']
print(lst2) -> ['a', 'b', 'c', 'd']
[:] erstellt eine Kopie, ohne [:] hat lst1 und lst2 gleiche Identität
# Frage 3b: Was ist die Ausgabe des Programms?
set1 = { 1, 2 }
set2 = set1
set1.add(3)
print(set1)
print(set2)
# Frage 3b: Was ist die Ausgabe des Programms?
set1 = { 1, 2 }
set2 = set1
set1.add(3)
print(set1) -> {1, 2, 3}
print(set2) -> {1, 2, 3}
Was ist die Ausgabe des folgenden Programms?
def mystery(s, lst):
s = s.upper()
lst = lst + [2]
s = 'a'
lst = [1]
mystery(s, lst)
print(s, lst)
Ausgabe:
'a', [1]
Veränderungen der Funktion betrifft nur die lokalen Variablen.
Ordne die Eigenschaften den Datencontainern zu
Dictionary
List
Set
Wie kann der Wert von marks ausgelsen werden?
student = {
"name": "Emma",
"class": 9,
"marks": 75
}
Für jede Aussage muss entschieden werden: [richtig] oder [falsch]
Wie kann der Wert von marks ausgelsen werden?
student = {
"name": "Emma",
"class": 9,
"marks": 75
}
Richtig
falsch
Ordnen Sie die Eingaben unten die zugehörigen Ausgaben zu!
#Eingaben 1, 2 und 24
zahl = int( input( "Zahl: " ) )
if zahl % 8 == 0:
print( "Zahl ist durch 8 teilbar" )
if zahl % 3 == 0:
print( "Zahl ist durch 3 teilbar" )
if zahl % 2 == 0:
print( "Zahl ist durch 2 teilbar" )
else:
print( "else-Fall" )
1 else-Fall
2 Zahl ist durch 2 teilbar
24 Zahl ist durch 8 teilbar
Zahl ist durch 3 teilbar
Zahl ist durch 2 teilbar
Mit der folgenden Funktionsdefinition, welche der Aufrufe sind gültig ?
def func(message, num_times=1, *, reverse):
Mit der folgenden Funktionsdefinition, welche der Aufrufe sind gültig ?
def func(message, num_times=1, *, reverse):
Mit der folgenden Funktionsdefinition, welche der Aufrufe sind gültig ?
def func(message, num_times=1, *, reverse):
pass
Mit der folgenden Funktionsdefinition, welche der Aufrufe sind gültig ?
def func(message, num_times=1, *, reverse):
pass
Welche der Funktionsdefinitionen ist gültig ?
· def func_c(message = "Hello", num_times):
· def func_a(message, num_times=1):
· def func_d(message, num_times=1, *, reverse):
· def func_b(message = "Hello", num_times=1):
Welche der Funktionsdefinitionen ist gültig ?
· def func_c(message = "Hello", num_times):
· def func_a(message, num_times=1):
· def func_d(message, num_times=1, *, reverse):
· def func_b(message = "Hello", num_times=1):
Was ist die Ausgabe des folgenden Programms?
s = 'garage'
total = 0
for char in s:
total = total + s.count(char)
print(total)
s = 'garage'
total = 0
for char in s:
total = total + s.count(char)
print(total)
1. Initialisierung:
2. Iteration über die Zeichen von s:
Die for-Schleife durchläuft jedes Zeichen von s und summiert die Häufigkeit (s.count(char)) jedes Zeichens im gesamten String s in total.
3. Ausgabe:
Das Programm gibt am Ende 10 aus.
Antwort:
Die Ausgabe des Programms ist 10.
Was ist die Ausgabe des folgenden Programms?
a = 1.0 > 0 + 2
print(a)
a = 1.0 > 0 + 2
print(a)
Was ist die Ausgabe des folgenden Programms?
print( 3 == 3.3 - 0.1 - 0.2)
print( 3 == 3.3 - 0.1 - 0.2)
Was ist die Ausgabe des folgenden Programms?
dict1 = {"key1":1, "key2":2}
dict2 = {"key2":2, "key1":1}
print(dict1 == dict2)
· True
· False
Was ist die Ausgabe des folgenden Programms?
dict1 = {"key1":1, "key2":2}
dict2 = {"key2":2, "key1":1}
print(dict1 == dict2)
· True
· False
Was ist die Ausgabe des folgenden Programms?
dict1 = {"key1":1, "key2":2}
dict2 = {"key2":2, "key1":1}
print(dict1 is dict2)
· True
· False
Was ist die Ausgabe des folgenden Programms?
dict1 = {"key1":1, "key2":2}
dict2 = {"key2":2, "key1":1}
print(dict1 is dict2)
· True
· False
Welche Datentypen sind möglich?
a) dict1 = { 1: "eins" , "2": 2}
b) dict2 = { [1] : "eins", [2] : "zwei" }
c) dict3 = { 1: [1,2,3], 2: [2,4,6] }
d) dict4 = { {1,2,3} : [1,2,3] }
e) dict5 = { 1: {1:"eins" , 2: "zwei"}}
f) dict6 = { {1:"eins" , 2: "zwei"} : 1 }
Welche Datentypen sind möglich?
a) dict1 = { 1: "eins" , "2": 2}
b) dict2 = { [1] : "eins", [2] : "zwei" }
Schlüssel: list, nicht erlaubt weil listen veränderlich sind
c) dict3 = { 1: [1,2,3], 2: [2,4,6] }
Werte dürfen beliebige Typen sein
d) dict4 = { {1,2,3} : [1,2,3] }
Schlüssel: set, nicht erlaubt weil sets veränderlich sind
e) dict5 = { 1: {1:"eins" , 2: "zwei"}}
Werte dürfen beliebige Typen sein
f) dict6 = { {1:"eins" , 2: "zwei"} : 1 }
Schlüssel: dict, nicht erlaubt weil dictionary veränderlich sind
Warum sollte man == bei Float Elementen nicht nutzen?
Man sollte den Vergleichsoperator == bei float-Werten nicht verwenden, weil Gleitkommazahlen oft Rundungsfehler enthalten.
Stattdessen sollte man math.isclose() oder eine manuelle Toleranzprüfung verwenden.
Wie ist die Operatoren Rangfolge?
Du hast eine Liste namens meine_zahlen erstellt und möchtest ihr nachträglich den Zahlenwert 42 hinzufügen.
Du möchtest einer Variablen den Buchstaben A zuweisen.
Welche dieser Aussagen ist FALSCH?
Mit welchem Operator weisen Sie einer Variablen einen Wert zu?
=
Welche Zahlenwerte können Sie in Python als Integer darstellen?
A – 5,5
B – -5
C – 5 1/2
D – 5
E – 55555555
B, D, E
Iterieren Sie mit einer for-Schleife über das Array mein_array.
Welche Aussage trifft zu?
Der Operator für den negierten direkten Vergleich ist !=.
Welche dieser Aussagen ist FALSCH?
Das logische Oder gibt True zurück, wenn beide Werte False sind.
while-Schleifen _____.
while-Schleifen _____.