如何在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

fractions

unidecode

另一答案
from unidecode import unidecode
from fractions import Fraction
a = unidecode('100½').split()
print(float(int(a[0])+Fraction(a[1])))

以上是关于如何在Python中将带分数的字符串转换为float的主要内容,如果未能解决你的问题,请参考以下文章

在python列表中将数字转换为成绩

如何在python中将字符串转换为日期时间[重复]

如何在 Python 中将列表转换为带有空格的字符串?

如何在python中将异常转换为字符串[重复]

如何在 Python 中将字符串转换为 utf-8

如何在python中将数组字符串转换为数组[重复]