Rumah > Soal Jawab > teks badan
Saya telah memudahkan soalan asal, saya harap anda dapat membantu saya banyak
Terdapat 2 senarai yang sama panjang:
idlist = [id1, id2, id3, id4, id5]
userlist = [name1, name2, name3, name4, name5]
Ingin bergabung ke dalam kamus bentuk berikut:
dict_user = {{'id':id1, 'name':name1},{'id':id2, 'name':name2},{'id':id3, 'name':name3},{'id' :id4, 'name':name4},{'id':id5, 'name':name5}}
Bagaimana untuk menjana kamus di atas?
Ditambah: python 3
天蓬老师2017-06-28 09:24:02
Pertama sekali, dict_user anda tidak kelihatan seperti kamus, tetapi setiap elemen di dalamnya adalah kamus Anda boleh menggunakan fungsi zip untuk menggabungkan dua senarai yang sama panjang ke dalam senarai dua dimensi Dalam python3, idlist = [id1 , id2, id3, id4, id5]
senarai pengguna = [nama1,nama2,nama3,nama4,nama5]
zip= zip(senarai id, senarai pengguna)
pengguna= [dikt(id=id,nama=nama) untuk id ,nama dalam senarai(zip)]
Anda boleh mendapatkan
pengguna = [{'id':id1, 'name':name1},{'id':id2, 'name':name2},{'id':id3, ' name':name3},{' id':id4, 'name':name4},{'id':id5, 'name':name5}]
淡淡烟草味2017-06-28 09:24:02
untuk jalan
var listObj={},dict_user=[];
for(var i=0,len=idlist.length;i<len;i++){
listObj.id=idlist[i]
listObj.name=userlist[i]
dict_user.push(listObj);
}
musuhSetiap
var listObj={},dict_user=[];
idlist.forEach(function(item,index,self){
listObj.id=item;//listObj.id=idlist[index];
listObj.name=userlist[index];
dict_user.push(listObj);
})
忽略吧!我看错了!
PHP中文网2017-06-28 09:24:02
Pertama sekali
dict_user = { ... } Borang ini sepatutnya set (set/frozenset), tetapi kedua-duanya memerlukan objek yang disimpan boleh hashable, iaitu, ia tidak boleh menjadi objek berubah seperti dict, jadi ada bukanlah bentuk yang sedemikian.
仅有的幸福2017-06-28 09:24:02
sepatutnya dict_user = [{'id':id1, 'name':name1},{'id':id2, 'name':name2},{'id':id3, 'name':name3},{'id':id4, 'name':name4},{'id':id5, 'name':name5}]
, jika ya, kodnya adalah seperti berikut:
dict_user = [{"id": id, "name": user} for id, user in zip(idlist, userlist)]