I have a 2 dimensional list of list but I would like the list inside the list to be dictionary
list1 = [["ab","cd"],["ef","gh"]]
#code here,
print(output_list_of_dict)
#output should be ...
#[{"name": "ab", "phone":"cd"},{"name": "ef", "phone":"gh"}]
CodePudding user response:
You can do this directly with a comprehension and tuple unpacking:
list1 = [["ab","cd"],["ef","gh"]]
output_list_of_dict = [{"name": x, "phone": y} for x, y in list1]
CodePudding user response:
list1 = [["ab","cd"],["ef","gh"]]
res = []
for item in list1:
res.append({"name": item[0], "phone": item[1]})
print(res)
If you want to use list comprehension for a more "pythonic" way:
list1 = [["ab","cd"],["ef","gh"]]
res = [{"name": item[0], "phone": item[1]} for item in list1]
print(res)
CodePudding user response:
Here is your solution:
list1 = [["ab","cd"],["ef","gh"]]
output = []
for item in list1:
dic = {}
dic["name"] = item[0]
dic["phone"] = item[1]
output.append(dic)
print(output)
CodePudding user response:
dict
and zip
will also work
l = ["name", "phone"]
[dict(zip(l,i)) for i in list1]