2017-11-18 16:45:28 +01:00
|
|
|
#!/usr/bin/env python
|
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
|
|
|
|
"""
|
|
|
|
Napisz funkcję leet_speak, która podmienia w podanym napisie niektóre litery
|
|
|
|
na podobnie wyglądające cyfry: 'e' na '3', 'l' na '1', 'o' na '0', 't' na '7'.
|
|
|
|
Np. leet('leet') powinno zwrócić '1337'.
|
|
|
|
"""
|
|
|
|
|
|
|
|
|
|
|
|
def leet_speak(text):
|
2017-12-01 22:48:15 +01:00
|
|
|
letterList = list(text)
|
|
|
|
x = 0
|
|
|
|
for i in letterList:
|
|
|
|
if i == 'e':
|
|
|
|
letterList[x] = '3'
|
|
|
|
elif i == 'l':
|
|
|
|
letterList[x] = '1'
|
|
|
|
elif i == 'o':
|
|
|
|
letterList[x] = '0'
|
|
|
|
elif i == 't':
|
|
|
|
letterList[x] = '7'
|
|
|
|
x += 1
|
|
|
|
finalOutput = ''.join(letterList)
|
|
|
|
return finalOutput
|
2017-11-18 16:45:28 +01:00
|
|
|
|
|
|
|
|
|
|
|
def tests(f):
|
|
|
|
inputs = [['leet'], ['do not want']]
|
|
|
|
outputs = ['1337', 'd0 n07 wan7']
|
|
|
|
|
|
|
|
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(leet_speak))
|