Как работает cursor.rowfactory (cx_oracle) при возврате каждой строки в формате словаря? - PullRequest
0 голосов
/ 11 ноября 2018

Как это работает? Я посмотрел документацию. Он сказал, что cursor.rowfactory является атрибутом, позволяющим пользователю определить, как будет получен формат строки. Однако я не вижу примеров того, как это определить. Тогда я нашел ответ выше. Я полностью потерял след и понятия не имел, что это делает. Может кто-нибудь объяснить, что это делает? Что такое атрибут .rowfactory? А как makeDictFactory работает? Что делает createRow и что содержит args? Какие документы я могу посмотреть?

def makeDictFactory(cursor):
    columnNames = [d[0] for d in cursor.description]
    def createRow(*args):
       return dict(zip(columnNames, args))
    return createRow

curs.rowfactory = makeDictFactory(curs)
curs.fetchone()

Код отсюда

1 Ответ

0 голосов
/ 12 ноября 2018
...