If statement Python如何缩短我的代码(不提高效率)

If statement Python如何缩短我的代码(不提高效率),if-statement,If Statement,好的,任务是找到最小的倍数,它可以被1-20之间的所有数字平均分开 我的代码效率很低,而且,正如我所了解到的,完全过时了,因为你可以通过乘以素数因子来解决这个问题 但是如何使if部分变短呢 a=20 b=0 while b<1: if (a%20==0 and a%19==0 and a%18==0 and a%17==0 and a%16==0 and a%15==0 and a%14

好的,任务是找到最小的倍数,它可以被1-20之间的所有数字平均分开

我的代码效率很低,而且,正如我所了解到的,完全过时了,因为你可以通过乘以素数因子来解决这个问题

但是如何使if部分变短呢

a=20
b=0
while b<1:
    if (a%20==0 and
        a%19==0 and
        a%18==0 and
        a%17==0 and
        a%16==0 and
        a%15==0 and
        a%14==0 and
        a%13==0 and
        a%12==0 and
        a%11==0 and
        a%10==0 and
        a%9==0 and
        a%8==0 and
        a%7==0 and
        a%6==0 and
        a%5==0 and
        a%4==0 and
        a%3==0 and
        a%2==0):
        b=1
    else:
        a=a+1
print(a)
a=20
b=0
而b
if all(a%x==0 for x in range(2,21)):