在使用 Python 处理时,因为某些原因,可能遇到 Map 的键对应多个值的处理。
    很常见的比如:查询某表的结果,对应了多条记录。

    此时使用Python进行算法处理时,其中一种方式如下:

    • 定义一个 map,将执行结果通过 map.update() 进行更新
    • 然后通过 map.copy() 方法进行浅拷贝,并用 list 进行接收和追加
    • 最后解析该 list

    代码片段如下:

    1. cr.execute("SELECT VOUCHER_LIST_TYPE_CODE, VOUCHER_TYPE_CODE, VOUCHER_ORDER FROM ACCT.CORE_ACT_VOUCHER_INFO \
    2. ORDER BY VOUCHER_LIST_TYPE_CODE")
    3. result = cr.fetchall()
    4. __map = {'VOUCHER_LIST_TYPE_CODE': '', 'VOUCHER_TYPE_CODE': '', 'VOUCHER_ORDER': ''}
    5. __lst = list()
    6. for i in range(len(result) - 1):
    7. __map.update(VOUCHER_LIST_TYPE_CODE=result[i][0], VOUCHER_TYPE_CODE=result[i][1],
    8. VOUCHER_ORDER=result[i][2])
    9. tmp = __map.copy()
    10. __lst.append(tmp)
    11. print(__lst)