Форум сайта python.su
2
из MySQL читаю отвечающие условиям строки таблицы в массив функцией fetchall().
Получается массив из строк. Каждая строка (соответствует одной записи в таблице) состоит из списка строк. Например вот так
"abcd", "pedro", NULL, "23dss", "asfdsad" и так далее "ab2d", "pe111ro", "dsff", "2222ss", "asдодоsad" и так далее .......... "ab2d", NULL, "dsff", "2222ss", "asдодоsad" и так далее
Офлайн
186
> список не должен содержать повторяющихся строк
Добавь DISTINCT в SELECT.
>>> s = [["1", "2", None], ["4", "5", "6"], ["7", "8", None]] >>> list(reduce(lambda x, y: x + [ z for z in y if z ], s,[])) ['1', '2', '4', '5', '6', '7', '8']
Офлайн
2
прошу прощения поправка
мой SELECT возвращает в fetchall() несколько подобных строк
{'ID': 2, 'MET': 0, 'MET1': 2, 'ALL_BEZ': '70589226', 'FG_IDNR': '70589226', 'FG_BEZ': 'P9604D16N2003CC', 'FK_BEZ': None, 'FG': '70589226', 'HYDAC': None, 'REXROTH': None, 'SFFILTER': None, 'PARKER': None, 'STAUFF': None, 'VICKERS': None, 'DONALDSON': 'AVZDE', 'HIFI': None, 'SOFIMA': None, 'FILTREC': None}
spisok = ['70589226','P9604D16N2003CC','AVZDE',... ]
Офлайн
2
вот так тупо частично решил
x = {'ID': 2, 'MET': 0, 'MET1': 2, 'ALL_BEZ': '70589226', 'FG_IDNR': '70589226', 'FG_BEZ': 'P9604D16N2003CC', 'FK_BEZ': None, 'FG': '70589226', 'HYDAC': None, 'REXROTH': None, 'SFFILTER': None, 'PARKER': None, 'STAUFF': None, 'VICKERS': None, 'DONALDSON': None, 'HIFI': None, 'SOFIMA': None, 'FILTREC': None} y = x.values() z = list(y) a = list(set(z)) b = list(filter(None,a))
[2, '70589226', 'P9604D16N2003CC']
Отредактировано gtlhbkkj (Дек. 10, 2019 18:15:30)
Офлайн
44
удалено выше предложение уже использовали
и вставьте ссылку на его url Отредактировано AD0DE412 (Дек. 11, 2019 18:37:24)
Офлайн