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 22:04:15 +02:00
|
|
|
n= string1
|
|
|
|
m= string2
|
|
|
|
li = []
|
|
|
|
if len(n) >= len(m):
|
|
|
|
for i in range(len(n)):
|
|
|
|
for j in range(len(m)):
|
|
|
|
if n[i] == m[j]:
|
|
|
|
li.append(n[i])
|
|
|
|
|
|
|
|
else:
|
|
|
|
for i in range(len(m)):
|
|
|
|
for j in range(len(n)):
|
|
|
|
if m[i] == n[j]:
|
|
|
|
li.append(m[i])
|
|
|
|
li = list(set(li))
|
|
|
|
li.remove(' ')
|
|
|
|
li.sort()
|
|
|
|
return li
|
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__":
|
|
|
|
print(tests(common_chars))
|