2017-10-14 63 views
-2

添加支架我有一個列表的問題:在Python列表

position = self.request.POST.getlist('position') 
status = self.request.POST.getlist('tooth') 

a = dict((i, j) for i, j in zip(position, status) if j != '') 

print(a) 
{'14': 'status1', '15': 'status2', '13': 'status3'} 

是否有可能實現類似的格式結果:

{'14': [status1], [15]: [status2], [13]: [status3]} 

請。

+0

status1,status2,status3是變量嗎? –

+6

python詞典不能像列表中的鍵那樣具有列表。見[這裏](https://stackoverflow.com/questions/7257588/why-cant-i-use-a-list-as-a-dict-key-in-python)。 – kaza

+0

如果你想要的值是列表,你可以做這樣的: a = dict((i,[j])爲i,j在zip(位置,狀態)如果j!='') –

回答

2

這應做到:

{k:[v] for k, v in a.items()} 

這導致:

{'13': ['status3'], '15': ['status2'], '14': ['status1']} 

注意,關鍵是保持不變。您的示例顯示其中一些被轉換爲整數並嵌入到列表中,但列表不能是字典鍵。

+0

謝謝!這對我有用。 –