【发布时间】:2015-01-12 12:45:02
【问题描述】:
我想像这样在python中构建动态字典,
users = {log_id : { "message_id" : "1", "sent_to" : "taqi.official@outlook.com" , "unique_arguments" : "03455097679"},
log_id : { "message_id" : "1", "sent_to" : "taqi.hass@cogilent.com" , "unique_arguments" : "03455097679" },
log_id : { "message_id" : "2 Turab", "sent_to" : "taqi.official@gmailllllll.com" , "unique_arguments" : "4534534535" }}
我已经编写了这段代码,但它没有按照我的意愿构建;
cur = conn.cursor()
cur.execute("select log_id, message_id, sent_to, unique_arguments from sendmessage_log_messages where log_status = 'Queue'")
rows = cur.fetchall()
count = 0
for row in rows:
temp['message_id'] = row[1]
temp['sent_to'] = str(row[2])
temp['unique_arguments'] = row[3]
log_dictionary[row[0]] = temp
print log_dictionary
它产生这个输出,
{1: {'unique_arguments': 'log_8_taqi.official@gmailllllll.com', 'message_id': 8, 'sent_to': 'taqi.official@gmailllllll.com'},
2: {'unique_arguments': 'log_8_taqi.official@gmailllllll.com', 'message_id': 8, 'sent_to': 'taqi.official@gmailllllll.com'},
3: {'unique_arguments': 'log_8_taqi.official@gmailllllll.com', 'message_id': 8, 'sent_to': 'taqi.official@gmailllllll.com'},
4: {'unique_arguments': 'log_8_taqi.official@gmailllllll.com', 'message_id': 8, 'sent_to': 'taqi.official@gmailllllll.com'}}
【问题讨论】:
-
将 missing
temp = {}声明移到循环内。 -
你能不能再正确打印一遍o/p,我没听懂
-
在我看来你得到了正确的输出。那里有什么问题?您希望输出按特定顺序排列吗?
-
@thiruvenkadam 看到我一次又一次地得到同一行,请注意 unique_arguments。
标签: python dictionary