如何 运行 循环遍历列表块的函数?
How to run a function in loop over the chunks of a list?
我有一个字符串类型的列表,长度为 4700。首先,我将列表分成大小为 1500 的相等块。所以现在,我有 4 个列表。
list_with_chunks = [[a,b,c,...],[f,g,h,....],[x,y,z,...],...,[l,m,n,...]]
new_list = []
def function():
# dummy function
return 2*x
我想要一个函数可以使用上面的 function()
并传递 list_with_chunks
的第一个块并将结果附加到 new_list
然后获取第二个块并附加结果到 new_list
从前一个附加由于第一个块而停止的任何地方等等,直到我完成所有块的传递。
更新:期望的输出:
new_list = [2*a, 2*b, 2*c.....,2*z] # all the chunks in just one final list.
请帮忙,TIA!
遍历块,使用列表推导式对所有块元素进行倍增,然后使用 extend
将结果附加到新列表。
def function(new_list, list_of_lists):
for l in list_of_lists:
new_list.extend([2 * x for x in l])
function(new_list, list_with_chunks)
print(new_list)
我有一个字符串类型的列表,长度为 4700。首先,我将列表分成大小为 1500 的相等块。所以现在,我有 4 个列表。
list_with_chunks = [[a,b,c,...],[f,g,h,....],[x,y,z,...],...,[l,m,n,...]]
new_list = []
def function():
# dummy function
return 2*x
我想要一个函数可以使用上面的 function()
并传递 list_with_chunks
的第一个块并将结果附加到 new_list
然后获取第二个块并附加结果到 new_list
从前一个附加由于第一个块而停止的任何地方等等,直到我完成所有块的传递。
更新:期望的输出:
new_list = [2*a, 2*b, 2*c.....,2*z] # all the chunks in just one final list.
请帮忙,TIA!
遍历块,使用列表推导式对所有块元素进行倍增,然后使用 extend
将结果附加到新列表。
def function(new_list, list_of_lists):
for l in list_of_lists:
new_list.extend([2 * x for x in l])
function(new_list, list_with_chunks)
print(new_list)