В настоящее время мой код выглядит примерно так.
best_Data =
[[1,2,3,4,5,6],
[10,11,12,13,14,15],
[20,21,22,23,24,25]]
Это значение регулярно обновляется, и в настоящее время я фиксирую его каждые 15 минут и сохраняю на трех отдельных листах, каждый из которых содержит один из подсписок, которые обновляются каждые 15 минут по мере обновления данных. Например, wb1 будет обновлен с помощью [1,2,3,4,5,6], а wb2 получит [10,11,12,13,14,15] и так далее.
Это код, который я сейчас использую для этого:
for sheet in wb:
sheet.append(best_Data[m])
m = m + 1
wb.save('Data.xlsx')
Однако на рабочих листах быстро заканчивается место, и я думаю о переходе на SQLite. Есть ли способ воспроизвести приведенный выше фрагмент кода, перебирая таблицы в SQLite, или мне придется его использовать методом перебора?
Метод грубой силы будет выглядеть примерно так.
c.execute("INSERT INTO Tbl1 VALUES (?,?,?,?,?,?,?,?,?,?)", best_Data[1])
c.execute("INSERT INTO Tbl2 VALUES (?,?,?,?,?,?,?,?,?,?)", best_Data[2])
c.execute("INSERT INTO Tbl3 VALUES (?,?,?,?,?,?,?,?,?,?)", best_Data[3])
Другая проблема заключается в том, что иногда данные неоднородны, например, счетчик выходит из строя и выдает ошибку. Достаточно ли гибок SQLite для этого метода грубой силы?
Требуется более подробная информация о ваших данных, особенно о том, что означают разные строки. Вероятно, наиболее подходящей будет одна таблица базы данных с дополнительным столбцом, содержащим идентификатор, который различает строки, соответствующие best_Data [1], best_Data [2] и best_Data [3].
Позвольте мне уточнить: можете ли вы определить свой best_data не как список списка, а как 3 независимые переменные best_data_1, best_data_2, best_data_3? А ваш процесс обновления можно разделить на 3 процесса независимый?
Действительно, если у вас есть обновление, зависящее от времени, почему бы даже не подумать о том, чтобы сделать строку вставок уникальной, используя метку времени в качестве идентификатора.
Ах, извините за это. Это данные о солнечной энергии, и есть 34 инвертора, которые я сейчас отправляю на 34 различных листа. Данные являются трехмерными (время x инвертор x измерение мощности), поэтому я бы предпочел иметь их в 34 разных таблицах, а не в одной огромной таблице данных, потому что было бы легче визуализировать / анализировать @lngaz, я, вероятно, могу сделать что-то вроде best_data1 = best_data [1] и т. д. ... но я не понимаю, почему это может помочь, потому что мне все равно придется использовать грубую силу на стороне SQL.
Чтобы быть более конкретным, строки должны быть временем, столбцы будут (INV 1 Leg 1 Power, INV 1 Leg 1 Efficiency, INV 1 Leg 2 Power, ... INV 1 Leg 6 Efficiency), а таблицы будут иметь INV 1 - 34.






Первый раз задаете вопрос, подходит ли этот формат для всего / имеет ли вопрос смысл?