1
0
forked from tdwojak/Python2017
Python2017/labs02/task10.py
Przemysław Kaczmarek d9564f3b1a Resolved
2017-11-28 19:38:07 +01:00

31 lines
867 B
Python

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Napisz funkcję pokemon_speak, która zamienia w podanym napisie co drugą literę
na wielką. Np. pokemon_speak('pokemon') powinno zwrócić 'PoKeMoN'.
"""
def pokemon_speak(text):
pokemon_text=[]
for i in range(len(text)):
if i%2==0 and ord(text[i])>=97 and ord(text[i])<=122:
pokemon_text.append(str(chr(ord(text[i])-32)))
else:
pokemon_text.append((text[i]))
return "".join(pokemon_text)
def tests(f):
inputs = [['pokemon'], ['do not want'], ['POKEMON']]
outputs = ['PoKeMoN', 'Do nOt wAnT', 'POKEMON']
for input, output in zip(inputs, outputs):
if f(*input) != output:
return "ERROR: {}!={}".format(f(*input), output)
break
return "TESTS PASSED"
if __name__ == "__main__":
print(tests(pokemon_speak))