data = file.readlines()
random_data = random.sample(products, count)
print(random_data)
with open(f'data/test.txt', 'w', encoding='utf-8') as file:
file.writelines(test for test in data if test not in random_data)
Кто нибудь подскажет, почему у меня в текстовый документ записывается на 512 строк меньше, если я в random.sample указываю в count всего 4?
Смысл кода таков, что надо прочитывать 4 рандомных строчки, потом записывать этот же файл но исключать эти строчки. Только он исключает на 128 раз больше чем надо 🙂
у меня был вот такой другой код, при меньшем количестве строк все работает нормально, я ничего не понимаю with open(f'data/test.txt', 'r+', encoding='utf-8') as file: data = file.readlines() random_data = random.sample(data, count) file.seek(0) updated_data = [] for test in data: if test not in random_data: file.writelines(test) file.truncate()
Обсуждают сегодня