При использовании функции я хочу, чтобы тип переменных был таким, как ожидалось. Как это сделать правильно?
Вот пример поддельной функции, пытающейся сделать это, прежде чем продолжать свою роль:
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()
Правильно ли утверждается? Должен ли я использовать try/except вместо?
Кроме того, мой утвердительный набор тестов не работает должным образом: S
Спасибо pythoneers