如何简化复杂的比例?
作者:互联网
有没有简单的方法可以简化比率下降?
例如1875:5625:625将变为3:9:1.
我正在使用Python,但是我想知道为什么而不是怎么做.
解决方法:
有一个内置的gcd
function in the fractions module,因此利用它我可以获得不错的输出:
from fractions import gcd
ratio = '1875:5625:625'
def solve(ratio):
numbers = [int(i) for i in ratio.split(':')]
denominater = reduce(gcd,numbers)
solved = [i/denominater for i in numbers]
return ':'.join(str(i) for i in solved)
ratio_2_solve = solve(ratio)
print ratio_2_solve
#3:9:1
所以给定比例
1875:5625:625
它会产生:
3:9:1
但这不是最好的部分,您甚至可以将比率设置为:
'1875:5625:625:5000:46875:46250'
仍然获得以下输出:
3:9:1:8:75:74
标签:fractions,python 来源: https://codeday.me/bug/20191122/2059310.html