Mat*_*hew 0 python if-statement
是否可以在此程序片段中缩短 if 语句?
for number in range(100):
if (number % 4 == 0 and number % 3 == 0 and number % 2 == 0):
Run Code Online (Sandbox Code Playgroud)
只需使用: if number % 12 == 0:
这是因为 12 是 4、3 和 2 的最小公倍数。
在编辑:
下面是一些计算整数列表(或其他可迭代)的最小公倍数的代码:
from math import gcd
def pair_lcm(a,b):
return a*b//gcd(a,b)
def lcm(nums):
"""computes the lcm of iterable nums"""
m = 1
for num in nums:
m = pair_lcm(m,num)
return m
Run Code Online (Sandbox Code Playgroud)
例如,
>>> lcm(range(1,11))
2520
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
51 次 |
| 最近记录: |