如何在Python中将带分数的字符串转换为float
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Python中将带分数的字符串转换为float相关的知识,希望对你有一定的参考价值。
我正在准备一些数据插入MySQL。不幸的是,有些数据的形式是100½
。我需要将其转换为浮点数,但显然float(100½)
失败了。
Python中是否有可以处理此转换的方法?我并不反对硬编码,但我将来可能会遇到⅝
或其他分数。
答案
>>> float(sum(fractions.Fraction(x) for x in unidecode.unidecode('100½').split()))
100.5
另一答案
from unidecode import unidecode
from fractions import Fraction
a = unidecode('100½').split()
print(float(int(a[0])+Fraction(a[1])))
以上是关于如何在Python中将带分数的字符串转换为float的主要内容,如果未能解决你的问题,请参考以下文章