1
0
Fork 0
Python2017/labs02/task11.py

37 lines
978 B
Python
Raw Normal View History

2017-11-18 16:45:28 +01:00
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Napisz funkcję common_chars(string1, string2), która zwraca alfabetycznie
2017-11-19 10:42:39 +01:00
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.
2017-11-18 16:45:28 +01:00
"""
2017-11-28 19:46:52 +01:00
2017-11-18 16:45:28 +01:00
def common_chars(string1, string2):
2017-11-28 19:46:52 +01:00
common_letters=[]
results=[]
for letter in string1:
if letter in string2 and ord(letter)<=122 and ord(letter)>=97:
common_letters.append(ord(letter))
common_letters=set(common_letters)
print(common_letters)
for letter in common_letters:
results.append(chr(letter))
return results
2017-11-18 16:45:28 +01:00
def tests(f):
2017-11-19 10:42:39 +01:00
inputs = [["this is a string", "ala ma kota"]]
outputs = [['a', 't']]
2017-11-18 16:45:28 +01:00
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))