Python2018/labs02/task11.py

34 lines
868 B
Python
Raw Normal View History

2018-05-12 11:37:19 +02:00
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Napisz funkcję common_chars(string1, string2), która zwraca alfabetycznie
uporządkowaną listę wspólnych liter z lańcuchów string1 i string2.
Oba napisy będą składać się wyłacznie z małych liter.
"""
def common_chars(string1, string2):
2018-06-02 19:40:33 +02:00
lista = []
2018-06-02 19:46:40 +02:00
str1 = set(string1.replace(' ', ''))
str2 = set(string2.replace(' ', ''))
2018-06-02 19:40:33 +02:00
for i in str1:
for j in str2:
2018-06-02 19:46:40 +02:00
if i == j:
lista.append(i)
2018-06-02 19:40:33 +02:00
lista.sort()
return lista
2018-05-12 11:37:19 +02:00
def tests(f):
inputs = [["this is a string", "ala ma kota"]]
outputs = [['a', 't']]
for input, output in zip(inputs, outputs):
if f(*input) != output:
return "ERROR: {}!={}".format(f(*input), output)
break
return "TESTS PASSED"
if __name__ == "__main__":
2018-06-02 19:40:33 +02:00
print(tests(common_chars))