【问题标题】:PyODBC result to a dictionaryPyODBC 结果到字典
【发布时间】:2017-09-27 18:32:37
【问题描述】:

我正在尝试使用fetchall() 制作带有结果的字典。

我会尽量解释我需要什么;我在 Python 中有以下代码:

conexiones = crsr_kala.execute("SELECT dst_srv, dst_db FROM info_skill_vdn_campana WHERE activo = 1 AND pbx = 'V2' GROUP BY dst_srv;").fetchall()

这是 SQL 的输出:

所以我想在 Python 上制作一个字典,现在我有了下一个代码:

col = [column[0] for column in conexiones]
res = []
for row in conexiones:
    res.append(dict(zip(col, row)))
cox2 = collections.defaultdict(set)
for d in res:
    for k, v in d.iteritems():
        cox2[k].add(v)

但这是输出:

我想得到以下内容:

{'172.59.xx.xx': set([PBX_es]), '172.65.xx.xx': set([PBX_pt]), '172.72.xx.xx': set([PBX_mx])}

但是,我不知道如何编辑我的实际代码以获得该输出。

请帮忙!

【问题讨论】:

    标签: python mysql pyodbc


    【解决方案1】:

    你想多了。您首先构建了一个{'dst_srv': .., 'dst_db': ..} 列表,但实际上并不需要它。

    cox2 = collections.defaultdict(set)
    for k,v in conexiones:
        cox2[k].add(v)
    

    【讨论】:

    • 有效!但是你知道有没有办法改变设置为str的值?
    • 设置为str是什么意思?喜欢{'1','2'}1,2
    猜你喜欢
    • 2013-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-21
    • 2012-03-13
    • 2015-07-04
    相关资源
    最近更新 更多