我在和这个小东西斗争。假设:
field_name = ['name', 'age', 'sex']
field_values = ['john', '24', 'M', 'jane', '26', 'F']
输出类似于:
{ 'name': ['john','jane'],
'age': ['24', '26'],
'sex': ['M', 'F']
}
正在压缩:
dict_sample_fields = dict(zip(field_name, field_value))
#output
{ 'name': 'john',
'age': '24',
'sex': 'M'
}
如何实现值的循环压缩?你知道吗
我可以通过多个循环来实现这一点。一个班轮会很酷:D
假设您的值被3个索引的距离隔开,您可以这样做,而不必使用任何
zip
作为单个for循环。使用enumerate
可以访问索引,您可以利用索引访问列表值。如果要使其更通用,可以使用字段数(“键”)作为偏移量。你知道吗输出
把它们放在一起
其实很简单,你甚至不需要
zip
:利用切片
list
的步骤,从field_name
的索引开始即可。你知道吗我们可以使用^{} 中的^{} 函数或
itertools
文档中的同名函数recipe对值进行分组。然后这些组可以用zip
进行转位。你知道吗这不会产生中间列表。你知道吗
相关问题 更多 >
编程相关推荐