我只是想知道如果我可以輕鬆地將混合數字(輸入爲數字或字符串)轉換爲浮點數或整數。我已經看了分數模塊,但它似乎無法做到我想要的,或者我讀得不好。是否有Python模塊,我可以輕鬆地將混合分數轉換爲浮點數?
只是想知道,如果事情已經存在,然後我寫我自己的功能。這裏就是我要找的,順便說一句:
convert(1 1/2)
或
convert('1 1/2')
感謝。
我只是想知道如果我可以輕鬆地將混合數字(輸入爲數字或字符串)轉換爲浮點數或整數。我已經看了分數模塊,但它似乎無法做到我想要的,或者我讀得不好。是否有Python模塊,我可以輕鬆地將混合分數轉換爲浮點數?
只是想知道,如果事情已經存在,然後我寫我自己的功能。這裏就是我要找的,順便說一句:
convert(1 1/2)
或
convert('1 1/2')
感謝。
內置的Fraction
類看起來不像支持混合分數,但在空間上分割它們並不難。例如,1 + fractions.Fraction('1/2')
還是一個非常簡單的
def convert(f):
whole, frac = f.split()
return int(whole) + fractions.Fraction(frac)
我寫了Mixed
類來擴展分數來做到這一點。來源是here。
>>> float(Mixed('6 7/8'))
6.875
>>> float(Mixed(1,1,2)) # 1 1/2
1.5
謝謝先生,是的,我可以分裂(''),這就是我想知道的,再次感謝:) – arscariosus