import random
import string
def get_indexes(els):
els_unique = []
for el in els:
if el not in els_unique:
els_unique.append(el)
indexes = {el: i for i, el in enumerate(els_unique)}
return [indexes[k] for k in els]
l = ['abc', 'apple', 'pen', 'abc', 'pen', 'pc']
new_l = random.sample(tuple(random.randint(100, 110) for _ in range(30)), 15)
random.shuffle(new_l)
print(get_indexes(l))
print(new_l, get_indexes(new_l))
def unique(old_els):
els = []
for el in old_els:
if el not in els:
els.append(el)
return els
l = ['abc', 'apple', 'pen', 'abc', 'pen', 'pc']
indexes = {el: i for i, el in enumerate(unique(l))}
result = [indexes[k] for k in l]
print(indexes, result)
result = sum(i for i in range(1000) if (i % 2 and not i % 3) and i % 4)
(not i % 4 == 0) == i % 4 - нагромождение лишнего в питоне в данном случае будет истинной любой результат отличный от нуля, нет смысла ноль с нулем сравнивать и отрицание делать