gpt4 book ai didi

python - 避免 Python 中的冗余循环

转载 作者:太空宇宙 更新时间:2023-11-04 01:54:08 25 4
gpt4 key购买 nike

我有两个列表(商品、销售),对于两个列表之间的每对商品、销售元素,我必须调用一个函数。我正在寻找一种避免这种冗余循环的 pythonic 方法

第一个循环:

# Create item_sales_list

item_sales_list = list()

for item,sales in itertools.product(items,sales):
if sales > 100:
item_sales_list.append([item,sales])

result = some_func_1(item_sales_list)

第二个循环:

# Call a function with the result returned from first function (some_func_1)


for item,sales in itertools.product(items,sales):
some_func_2(item,sales,result)

最佳答案

如果将结果存储在列表中,则至少可以避免对 itertools.product 的第二次调用,在 some_func_1 的调用位置添加条件:

item_sales_list = list(itertools.product(items, sales))

result = some_func_1([el for el in item_sales_list if el[1] > 100])

for item, sales in item_sales_list:
some_func_2(item, sales, result)

除非您可以将 result 的不完整版本传递给 some_func_2,否则不可能一次性完成。

关于python - 避免 Python 中的冗余循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57295954/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com