Как получить только цифры из массива?
Суть такая, я вытаскиваю из базы данных SQlite3 номера id которые добавляются мне в массив, а мне нужны отдельные числа, подскажите пожалуйста как такое можно сделать? Вот немного кода:
searching_object = f"{message.text}"
cur.execute(f"SELECT id FROM ads WHERE feature1 = '%s'" % searching_object)
result = cur.fetchall()
print(result) # Результат: [(3,), (4,), (5,)]
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Это список кортежей. Можете просто взять из кортежей первые элементы:
result = [(3,), (4,), (5,)]
result = [x[0] for x in result]
print(result)
Вывод:
[3, 4, 5]
SQL возвращает кортежи потому, что вы же можете сделать select не только одного поля, но и нескольких, поэтому возвращается кортеж из значений выбранных полей. Даже если поле только одно, возвращается всё-равно кортеж из одного элемента, как в вашем случае.