我试图将字典的键和值插入python列表。我似乎无法弄清楚该怎么做。
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Version_2_2)
.ConfigureApiBehaviorOptions(options =>
{
options.SuppressMapClientErrors = true;
};
我想要的是
my_dict={test1:[1,2,3,4],test2:[2,3,4,5]}
我是python的新手,所以将不胜感激。
答案 0 :(得分:7)
应该这样做
我们需要遍历字典,并创建一个包含键和值的列表,请注意,我们需要展开值数组*value
才能追加到列表中
my_dict={'test1':[1,2,3,4],'test2':[2,3,4,5]}
#Iterate over key and value, and make a list from them, unrolling the value since it is a list
my_list = [[key, *value] for key, value in my_dict.items()]
print(my_list)
#[['test1', 1, 2, 3, 4], ['test2', 2, 3, 4, 5]]
答案 1 :(得分:5)
使用列表理解
例如:
my_dict={"test1":[1,2,3,4],"test2":[2,3,4,5]}
my_list = [[k] +v for k, v in my_dict.items()]
print(my_list)
输出:
[['test1', 1, 2, 3, 4], ['test2', 2, 3, 4, 5]]
答案 2 :(得分:3)
其他解决方案使用列表推导,这对于刚接触python的人来说可能太复杂了,因此这是一个没有列表推导的解决方案。
my_dict={"test1":[1,2,3,4],"test2":[2,3,4,5]}
new_list = []
for key, value in my_dict.items():
print(key, value)
temp = []
temp.append(str(key))
for a in value:
temp.append(a)
new_list.append(temp)
print(new_list)
# [['test1', 1, 2, 3, 4], ['test2', 2, 3, 4, 5]]
答案 3 :(得分:1)
这是一个没有列表理解的版本,我记得我刚接触python时花了几个月的时间来理解语法。
my_dict={'test1':[1,2,3,4],'test2':[2,3,4,5]}
my_list = []
for key, value in my_dict.items():
my_list.append([key, *value]) # the '*value' bit means all elements of the 'value' variable
print(my_list)
答案 4 :(得分:1)
FOMO:
my_dict={'test1':[1,2,3,4],'test2':[2,3,4,5]}
x = lambda a:[a[0],*a[1]]; print([x(i) for i in my_dict.items()])
#[['test1', 1, 2, 3, 4], ['test2', 2, 3, 4, 5]]