【发布时间】:2013-05-05 16:26:58
【问题描述】:
又在谷歌上搜索了几个小时以寻求答案,但似乎我的情况很独特,或者我对 Py 的理解......呃,独一无二。
我有一个从 MySQLdb.cursors.DictCursor 查询构建的字典列表(我们称之为 sqlListOfDict),Py 打印产生这个:
[{'volYtday': 18083292,
'volToday': 49395261,
'time': datetime.timedelta(0, 34800),
'priceChgPct': Decimal('1.2400'),
'volDiffPct': 173.15414140301445,
'priceNom': Decimal('6.5300'),
'date': datetime.date(2013, 4, 30),
'secCode': 'xoxoxo',
'volDiff': 31311969}]
然后我有另一个字典列表(我们称之为 myListOfDict),声明为空,Py 打印产生这个:
[{'priceChgPct': '',
'volYtday': '',
'priceNom': '',
'volDiffPct': '',
'volToday': '',
'time': '',
'date': '',
'secCode': '',
'volDiff': ''}]
我需要通过索引号从 sqlListOfDict 中将特定字典附加到 myListOfDict,代码:
myListOfDict.append(sqlListOfDict[0])
不高兴,myListOfDict 仍然是声明的(空),Py 没有给出任何回溯。
我做了一些实验:
listDictA = [dict.fromkeys(['secCode', 'volDiff'])]
listDictB = [{'secCode': 'valB1', 'volDiff': 1000},
{'secCode': 'valB2', 'volDiff': 1000},
{'secCode': 'valB3', 'volDiff': 1000},
{'secCode': 'valB4', 'volDiff': 1000},
{'secCode': 'valB5', 'volDiff': 1000},
{'secCode': 'valA1', 'volDiff': 1000}]
运行相同的命令:
listDictA.append(listDictB[0])
成功了!第一个案例我做错了什么?感谢您的帮助。
【问题讨论】:
-
你能分享你的实际代码吗?
-
现在我想多了。您可以打印一行而不调用 .fetchone()...
-
嗨马丁,你是指哪个实际代码?谢谢。
-
产生
sqlListOfDict的代码。另外,你期待什么输出? -
嗨,杰森,没错。 'print sqlListOfDict[i]['anyKey']' 没有悲伤。我需要为追加做不同的事情吗?谢谢。
标签: python mysql-python