Предположим, у меня есть запрос SELECT SQL, и я хочу вернуть структуру, например. для первых 3-х рядов:
{
0: {'ColName0': 'Col1RowValue0', 'ColName1': 'Col1RowValue0'},
1: {'ColName0': 'Col0RowValue1', 'ColName1': 'Col1RowValue1'},
2: {'ColName0': 'Col0RowValue2', 'ColName1': 'Col1RowValue2'}
...
}
Я подошел к следующему, но не могу заставить работать внешнюю структуру индекса: {0: {}, 1: {}}
with read_con.cursor() as cur:
cur.execute(DONOR_SELECT)
column_names = [col[0] for col in cur.description]
temp_d = [dict(zip(column_names, row))
for row in cur.fetchall()]
print(temp_d)
Курсор от pyodbc
1 ответ
Вам нужен dict comprehension
с enumerate
temp_d = {i : dict(zip(column_names, row)) for i, row in enumerate(cur.fetchall())}
Похожие вопросы
Новые вопросы
python
Python - это многопарадигмальный, динамически типизированный, многоцелевой язык программирования. Он разработан для быстрого изучения, понимания и использования, а также для обеспечения чистого и единообразного синтаксиса. Обратите внимание, что Python 2 официально не поддерживается с 01.01.2020. Тем не менее, для вопросов о Python, связанных с версией, добавьте тег [python-2.7] или [python-3.x]. При использовании варианта Python (например, Jython, PyPy) или библиотеки (например, Pandas и NumPy) включите его в теги.