Python怎样把2个列表合成为一个字典?

怎样把2个列表合成一个字典里了?

def listtodict(lista,listb):
    result = dict()
    if len(lista) == len(listb):
        for i in range(len(lista)):
            result[str(a[i])] = listb[i]
        return result
    else:
        error = "合并列表长度不一样"
        return error
a = list(input("请输入第一个数组元素:"))
b = list(input("请输入第二个数组元素:"))
print (listtodict(a,b))

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-04-08
def listToDict(listA, listB):
result = dict()
totalList = list(set(listA+listB))
for i in totalList:
result[str(i)] = i
return result
a = [1,2,3,4,5]
b = [2,3,4,5,6]
print listToDict(a,b)

第2个回答  2013-04-09
我来给你解释一下为什么要-1,因为(len(a)-1)=5,而不是你所说的等于4,len是从1开始的,而range(len(a)-1)也就是range(5),而range()是从0开始的,所以是0,1,2,3,4,所以就能包含'e'了。
第3个回答  推荐于2017-09-15
比如:l1=[1,2,3]
l2=['baidu','google','bing']

py3.x中
dict(map(lambda x,y:[x,y], l1,l2))
{1:'baidu', 2:'google', 3:'bing'}

py2.x中
dict(zip(l1,l2))本回答被网友采纳
第4个回答  2018-03-24
写反了吧,大兄弟,上边那个是python2,下边的是python3
相似回答