2016-03-29 83 views
0

有一個詞典列表。Python在詞典列表中添加數字序列

[{'skillid': 1, 'QueText': u'xxxx, 'Feedback':u'xxxx} , {'skillid': 1, 'QueTextt': u'xxx, 'Feedback': u'xxx}, {'skillid': .....}] 

如何插入一個新的鍵的順序值? (鍵值爲 'QueNo' 和值是按順序按順序)

需要的輸出:

[{'skillid':1, 'QueText': u'xxx, 'QueNo': 1, 'Feedback': u'xxx}, 
{'skillid':1, 'QueText': u'xxx, 'QueNo': 2, 'Feedback': u'xxx}, 
{ ..............................'QueNo':3, .................}] 
+0

詞典沒有設計的順序。列表有順序和索引,但字典使用鍵來設置/獲取值。 – jDo

回答

1

我做了一個測試,看起來不錯,代碼如下:

seq=[{'skillid': 1, 'QueText': u'quetext', 'Feedback':u'feedback'} , {'skillid': 1, 'QueText': u'quetext', 'Feedback':u'feedback'},{'skillid': 1, 'QueText': u'quetext', 'Feedback': u'feedback'} ] 
# print seq 
count=1 
for subseq in seq: 
    subseq.setdefault('QueNo',count) 
    count+=1 
    print subseq 

d字典將被命令打印像這樣:

{'Feedback': u'feedback', 'QueNo': 1, 'QueText': u'quetext', 'skillid': 1} 
{'Feedback': u'feedback', 'QueNo': 2, 'QueText': u'quetext', 'skillid': 1} 
{'Feedback': u'feedback', 'QueNo': 3, 'QueText': u'quetext', 'skillid': 1} 
+0

優秀的建議Shonminh。它工作完美。非常感謝。 – FelixPhillip

1

您可以enumerate列表並添加QueNo鍵:

for i, d in enumerate(l, 1): 
    d['QueNo'] = i