我试图将两个列表合并到一个字典中,同时排除第一个列表中的整数和第二个列表中的字符串
list1 = ["A","B","C","D","E" ,"F", 1 ,"G", 3 ,"H","I","J","K","L"]
list2 = [20 ,27 , "Arm","Leg", 13 , 24 ,"Head", 75 , 64 , 71 ,"Ankle", 82 , 45 , 23]
我尝试使用以下代码:
dictchallenge ={[x for x in list1 if isinstance(x, str)][i]: [x for x in list2 if isinstance(x, int)][i] for i in range(len([x for x in list1 if isinstance(x, int)]))}
print(dictchallenge)
代码的输出为:
{'A': 20, 'B': 27}
代码只是将键列表中的前两个字符串与值列表中的前两个整数合并,我需要将第一个列表中的所有键与第二个列表中的所有值合并,如下所示:
{'A': 20, 'B': 27, 'E': 13, 'F': 24, 'G': 75, 'H': 71, 'J': 82, 'K': 45, 'L': 23 }
如果有人能帮我,谢谢
您可以首先从两个列表中获取您不需要的索引:
然后,您可以去掉不需要的元素:
最后,您可以压缩这两个列表:
使用一个for循环并检查
list1
是否具有键asstring 并且list2
具有作为int的值,如果是,则将其添加到dictoutput
和增量i
和j
输出:
试试这个:
相关问题 更多 >
编程相关推荐