Барлыбай Мади, 311/312 группа SlotGen 8180
david_Yakhin_312 SlotGen 8268
t1def slotgen(number):t1def slotgen(number):
22
3    def decorator(cls):3    def decorator(cls):
4        letters = 'abcdefghijklmnopqrstuvwxyz'4        letters = 'abcdefghijklmnopqrstuvwxyz'
5        length = 15        length = 1
6        while len(letters) ** length < number:6        while len(letters) ** length < number:
7            length += 17            length += 1
88
9        def make_name(index):9        def make_name(index):
10            result = []10            result = []
11            base = len(letters)11            base = len(letters)
12            for _ in range(length):12            for _ in range(length):
13                index, rem = divmod(index, base)13                index, rem = divmod(index, base)
14                result.append(letters[rem])14                result.append(letters[rem])
15            result.reverse()15            result.reverse()
16            return ''.join(result)16            return ''.join(result)
17        slots = [make_name(i) for i in range(number)]17        slots = [make_name(i) for i in range(number)]
18        attrs = {}18        attrs = {}
19        for name, value in cls.__dict__.items():19        for name, value in cls.__dict__.items():
20            if name in ('__dict__', '__weakref__', '__slots__'):20            if name in ('__dict__', '__weakref__', '__slots__'):
21                continue21                continue
22            if name in slots:22            if name in slots:
23                continue23                continue
24            attrs[name] = value24            attrs[name] = value
25        attrs['__slots__'] = tuple(slots)25        attrs['__slots__'] = tuple(slots)
26        return type(cls.__name__, cls.__bases__, attrs)26        return type(cls.__name__, cls.__bases__, attrs)
27    return decorator27    return decorator
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op