gpt4 book ai didi

python - 值错误 : could not convert string to float: '" "'

转载 作者:行者123 更新时间:2023-11-28 22:21:45 24 4
gpt4 key购买 nike

我有一些值是 csv 文件,在 csv 文件中,一些值是数字,一些是字符串数字。csv 文件示例:

1,"1151226468812.22",100,1,467,999.00,999.95,15,1,999.00,999.95,998.50,999.95,15,999.01,1396,34,06092016091501.444,1394627.25
2,"1151226468812.11",100,1,467,999.00,1000.00,1605,3,999.00,1000.00,998.50,1000.00,5,999.03,1426,37,06092016091502.111,1424626.50

所以我想将字符串转换为 float 。所以这是我的代码:

datareader = csv.reader(datafile, delimiter=",", quoting= csv.QUOTE_NONE)

names = []
names.append("local_timestamp")
names.append("nse_timestamp")
for row in datareader:
data = dict()
data.update(local_timestamp = row[0])
data.update(nse_timestamp = float(row[1]))

但是返回值错误。

ValueError: could not convert string to float: '"1151226468812.22"'

最佳答案

问题在于您的字符串不仅仅是'1151226468812.22',而是'"1151226468812.22"'。它还包含语音标记 (")。这意味着在将其转换为 float 之前,您需要删除开头和结尾的语音标记。幸运的是,Python 有一个非常方便的字符串方法 .strip() 为您完成此操作。

string.strip(s) 将返回一个字符串,该字符串删除了前导和结尾的 ' 字符

例如:

myString = "#hello#".strip("#")

在此代码中,myString 只是'hello'

在这种情况下,您想要去除 row[1] 的前导和尾随 " 字符。您可以很容易地做到这一点:

row[1].strip("\"")

关于python - 值错误 : could not convert string to float: '" "' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48075861/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com