2018-05-12 11:37:19 +02: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):
|
2018-05-13 12:54:21 +02:00
|
|
|
lista = list(text)
|
|
|
|
słownik = {'1':'l', '3':'e', '0':'o', '7':'t'}
|
|
|
|
lista_wartosci = słownik.values()
|
|
|
|
lista_mod = []
|
|
|
|
|
|
|
|
for i in range(len(lista)):
|
|
|
|
for key, value in słownik.items():
|
|
|
|
if lista[i] in value:
|
|
|
|
lista[i]=key
|
|
|
|
wynik = "".join(lista)
|
|
|
|
return wynik
|
2018-05-12 11:37:19 +02: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))
|