Bei der Verwendung einer Funktion möchte ich sicherstellen, dass der Typ der Variablen wie erwartet ist. Wie mache ich es richtig?
Hier ist ein Beispiel für eine gefälschte Funktion, die versucht, genau dies zu tun, bevor sie mit ihrer Rolle fortfährt:
def my_print(begin, text, end):
"""Print 'text' in UPPER between 'begin' and 'end' in lower
"""
for i in (begin, text, end):
assert isinstance(i, str), "Input variables should be strings"
out = begin.lower() + text.upper() + end.lower()
print out
def test():
"""Put your test cases here!
"""
assert my_print("asdf", "fssfpoie", "fsodf")
assert not my_print("fasdf", 33, "adfas")
print "All tests passed"
test()
Ist die Behauptung der richtige Ansatz? Soll ich stattdessen try / exception verwenden?
Außerdem scheint meine Testreihe nicht richtig zu funktionieren: S.
Danke Pythononeer