1from collections import defaultdict
2
3memory = defaultdict(list)
4
5def pretty(name):
6 return " ".join(word.capitalize() for word in name.split("_"))
7
8def memnick(*funcs):
9 if not funcs:
10 def decorator(func):
11 def saved(*args, **kwargs):
12 result = func(*args, **kwargs)
13 address, _ = result.split(",", 1)
14 speaker = func.__name__
15 if (speaker, result) not in memory[address]:
16 memory[address].append((speaker, result))
17 return result
18 saved.__name__ = func.__name__
19 return saved
20 return decorator
21 else:
22 result = []
23 for func in funcs:
24 name = pretty(func.__name__)
25 if name in memory:
26 for speaker, phrase in memory[name]:
27 result.append(f"С гласа на {pretty(speaker)}: {phrase}")
28 return result
.....
----------------------------------------------------------------------
Ran 5 tests in 0.001s
OK
15.03.2026 14:04
15.03.2026 14:05