@DarkiDeuce

Внутри списка содержится несколько кортежей. Можно ли как то вынуть всё содержимое кортежей внутри списка?

Когда достаю информацию из нескольких полей БД, то каждое значение возвращается в кортеже, все кортежи лежат внутри списка. Как избавить от кортежей в списке?

Я сделал так
for i in range(len(list_from_DB)):
    list.append(list_from_DB[i][0])


Но не уверен, корректно ли такое решение?

В целом есть вопросы по ДБ, почти все значения храню в типе TEXT(Конечно, когда не очевидно, что нужно использовать другой тип данных), а когда возникает потребность достать какую то информацию, то выбрав строку работаю с ней на прямую. Например, разделяю её через метод split, или прохожу циклом. Как мне кажется, это огромные костыли, но желаемого результата добиваюсь. На сколько правильно использовать такой подход?
  • Вопрос задан
  • 97 просмотров
Решения вопроса 1
xss = [(1, 'a'), (2, 'b'), (3, 'c')]

flat = [x for xs in xss for x in xs]

print(flat) # [1, 'a', 2, 'b', 3, 'c']
via
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Dr_Elvis
@Dr_Elvis Куратор тега Python
В гугле забанен
data = [('1','2','3'), ('4','5','6'), ('7','8','9')]
for row in data:
    print(row[0], row[1], row[2])

1 2 3
4 5 6
7 8 9

Из базы вы получаете список строк, каждая из которых содержит значение ячейки.
Ответ написан
aRegius
@aRegius
Python Enthusiast
chain.from_iterable

list(chain.from_iterable(data))
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы