Python2017/homework/task09.py

41 lines
1.1 KiB
Python

#!/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):
strin = []
for znak in text:
if znak == 'e':
znak1 = '3'
strin.append(znak1)
elif znak == 'l':
znak1 = '1'
strin.append(znak1)
elif znak == 'o':
znak1 = '0'
strin.append(znak1)
elif znak == 't':
znak1 = '7'
strin.append(znak1)
else:
strin.append(znak)
return ''.join(strin)
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))