Как переписать данный код в бинарном режиме?
Мне нужно построчно записать в файл .txt рандомные числа в таком количестве, что б файл весил не меньше 1 Гб, вот данный код, помогите переписать в бинарном режиме
import random
size = 0
with open("input.txt", "w") as file:
while True:
s = str(random.randrange(-100,100))
if size + len(s) + 2 < 1024 * 1024 * 1024:
print(s, file=file)
size += len(s) + 2
else:
print(' '*(1024 * 1024 * 1024 - size), file=file, end = '')
break
в бинарном режиме, то есть запись вместо "w" будет выглядить "wb", но поскольку у меня тип данных str, оно выдает ошибку:
TypeError: a bytes-like object cannot be str.
Ответы (1 шт):
Автор решения: Sergey Gornostaev
→ Ссылка
file.write((s + os.linesep).encode('utf-8'))
и
file.write(b' '*(1024 * 1024 * 1024 - size))