В моем telegram боте, цикл for перебирает из массива только последнюю строку.
@dp.callback_query_handler(lambda c: c.data == food) # В food попадает лишь последняя строка из массива.
class Storage:
def __init__(storage):
self.__storage = storage # какое-то хранилище
def __write(self, data):
pass # реализация способа записи данных в хранилище
def __load(self, args):
pass # реализация загрузки данных из хранилища
def get_data(self, criteria):
# реализация выборки данных из хранилища
return # возврат данных
def set_data(self, key, value):
pass # реализация добавления данных в хранилище
def sync(self):
pass # синхронизация хранилища и данных, загруженных в класс
подать сигнал в главный исполняемый файлабсолютно некорректная фраза. Нет главного исполняемого файла, есть глобальный EventLoop, который запускается вместе с QApplication, в который попадают все события и сигналы, сгенерированные любым QObject (сигналы могут генерировать не только виджеты, а любой класс наследник QObject). Дальше вступает connect, его задача создать связь конкретного сигнала конкретного QObject с переданной ему функцией.
self.parserBazos.newTextSignalBazos.connect(self.addNewItemBazos) # связываем сигнал newTextSignalBazos объекта parserBazos
# теперь при испускании объектом parserBazos сигнала newTextSignalBazos, будет вызван метод addNewItemBazos.
# смотрим в код parserBazos
class ParserBazos(QtCore.QObject):
running = False
newTextSignalBazos = QtCore.pyqtSignal(str)
def run(self):
bazos.main(config_dir, open_file_number_dir, open_file_csv_dir)
# видим сигнал newTextSignalBazos, но не видим его испускания. Где, кто и когда должен послать сигнал?
self.newTextSignalBazos.emit('TEST_STRING') # вот и посланный сигнал.
А как заполняете таблицу?