使用 sys 模块和 getsizeof() 函数获取列表的大小,并根据需要对列表进行分块处理。
代码示例:
import sys
def lambda_handler(event, context):
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
max_chunk_size = 4 * 1024 * 1024
# 每个 chunk 的大小可以自己定义
chunks = [my_list[i:i + max_chunk_size] for i in range(0, len(my_list), max_chunk_size)]
# 对每个 chunk 进行处理,可以将其传递给其他函数进行处理
for chunk in chunks:
print(sys.getsizeof(chunk))
return {
'statusCode': 200,
'body': 'Finished'
}
在上面的示例中,我们使用了 sys 模块和 getsizeof() 函数来获取 Python 列表的大小。然后,我们将列表划分为多个 chunk,每个 chunk 大小都不超过 4MB。这样可以确保列表可以在 AWS Lambda 中传递而不会超过限制。可以根据需要对 chunk 进行处理,例如将其传递给其他函数进行处理。