gpt4 book ai didi

python - 两个可分割列表

转载 作者:行者123 更新时间:2023-12-01 22:53:17 24 4
gpt4 key购买 nike

如果 list_1 中的所有数字都可以被 list_2 中的至少一个数字整除,我需要此函数返回 True。我尝试为此使用 all 函数:

for num1 in list_1: 
if all(num1 % num2 == 0 for num2 in list_2)
return True

我的解决方案的问题是它检查 list_1 中的所有数字是否可以被 list_2 中的所有数字整除,而这不是我所要求的。

我想知道是否有一种方法可以使 list_1 的所有数字在 list_2 中至少有一个因子?一个例子是:

List_1 = [15, 10, 4, 8, 12]List_2 = [2, 5, 3]输出真

List_1 = [15, 10, 7, 8, 12]List_2 = [2, 5, 3]输出假

第二种情况为 False,因为 7 不能被 list_2 中的任何数字整除。

最佳答案

您可以在理解中组合allany:

>>> l1=[8,10,20]
>>> l2=[2,3]
>>> any(all(n1%n2==0 for n1 in l1) for n2 in l2)
True

如果你想检查 list1 中的任何数字应该至少被 list 2 中的一个数字整除,你可以按如下方式重组上面的语句:

>>> l1,l2=[15, 10, 4, 8, 12],[2, 5, 3]
>>> all(any(n1%n2 for n2 in l2) for n1 in l1)
True

关于python - 两个可分割列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73760165/

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