Форум сайта python.su
Добрый день.
Есть xls файл, в него надо добавить 5 000 строк, но не сразу, а по одной.
Вроде на ум приходит xlrd и xlwt. Но при добавлении каждой строки мне тогда придется открыть файл, считать содержимое в массив, закрыть файл, добавить элементы в массив создать пустой файл с тем же именем, записать массив в файл, закрыть файл. …..и так 5 000 раз.
Сразу все строки записывать нельзя, таковы особенности решаемой задачи.
Посоветуйте, с помощью чего можно это сделать.
Офлайн
Не верится что это особенности задачи. Потому что это звучит настолько по тупому.
И вы что то тут лишнего наговорили. Какой открыть файл, какой массив?
Чего вы этим добиваетесь?
Офлайн
AlCatЭто очень просто сделать. Вам надо полностью отказаться от xls и записывать данные в текстовый файл в режиме append (как собственно все нормальные логи и делаются). Если кому надо он без проблем загрузит в exel вашу таблицу.
Сразу все строки записывать нельзя, таковы особенности решаемой задачи.
Посоветуйте, с помощью чего можно это сделать.
Отредактировано doza_and (Дек. 27, 2017 22:54:19)
Офлайн
doza_and+1
Вам надо полностью отказаться от xls и записывать данные в текстовый файл в режиме append
Офлайн
Как вариант посмотреть пакет openpyxl
Не уверен, что код рабочий, но суть должна быть ясна:
wb = load_workbook(filename = 'empty_book.xlsx') ws = wb.active next = ws.max_row+1 # определили последнюю строку и прибавили 1 ws.cell(column=1, row=next, value="Добавляем строку")
Офлайн