1
0
forked from tdwojak/Python2018
Python2018/labs02/task11.py

30 lines
841 B
Python

#!/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.
"""
import re
def common_chars(string1, string2):
a = re.split('[^a-zA-Z]', string1)
b = re.split('[^a-zA-Z]', string2)
return sorted(set(list(''.join(a))) & set(list(''.join(b))))
#return sorted(set(list(a)) & set(list(b)))
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__":
print(tests(common_chars))