如何将 Python 中的 VARCHAR 字符串值转换为浮点数?

问题描述

我正在从 Yahoo Finance 网络抓取股票价格,但其价值如下:

“3,099.00”

这个值被作为字符串读取。如何删除逗号,然后将值转换为浮点数?

最终目标是将此值作为 FLOAT 存储在 Postgres 中。

保存这个字符串的值如下:

price = soup.find('span',class_='Trsdu(0.3s) Fw(b) Fz(36px) Mb(-4px) D(ib)').text

解决方法

您可以为此使用内置的 locale 模块

import locale

price = "3,099.00"
locale.setlocale(locale.LC_ALL,'') 
price = locale.atof(price)

print(price,type(price))
>>> 3099.0 <class 'float'>
,

你可以像这样替换它:

float(price.replace(',',''))