Проблемы получения нужного среза на разных итерациях

При попытке разбить данные для записи, в случае, если количество символов в записи >= количеству файлов для записи - все отрабатывается нормально. Но если символов меньше, то запись идет криво, то символ пропадет, то лишние пустые файлы появятся. Перепробовал различные варианты, без результата.

p = bytearray(invert_sequence())

# automatically append symbol in flow need to rewrite
if servers >= len(invert_sequence()):
    p = bytearray(invert_sequence())
    more_bytes = servers - len((invert_sequence()))
    p.extend(more_bytes * b"0")
    print("содержимое more_bytes", more_bytes)


def choice():
    if servers >= len(invert_sequence()):
        ch = p
    else:
        ch = invert_sequence()
    return ch

def shear():
    section = round(len(encrypt()) / servers)
    return section

for i in range(servers):  # подходит, только если серверов >= символов, и если символы // на сервера
    print(choice()[(i * shear()):((i * shear()) + (shear()))])

# write to file
for i in range(servers):
    with open(f"{uuid.uuid4()}.txt", "wb") as file0:
        file0.write(choice()[(i * shear()):((i * shear()) + (shear()))])
        file0.close()

Заранее спасибо.


Ответы (0 шт):