forked from tdwojak/Python2018
38 lines
868 B
Python
38 lines
868 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):
|
||
|
value = ''
|
||
|
b = True
|
||
|
for i in text:
|
||
|
value += i.upper() if b else i.lower()
|
||
|
b = not b
|
||
|
if i.isupper() == True:
|
||
|
return text
|
||
|
else:
|
||
|
return value
|
||
|
|
||
|
|
||
|
pokemon_speak('pokemon')
|
||
|
pokemon_speak('do not want')
|
||
|
pokemon_speak('POKEMON')
|
||
|
|
||
|
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))
|