qimi_and_softkitty 2018-02-02 08:39 采纳率: 0%
浏览 16790
已采纳

Python读取csv文件后str转换为float

-------------------------------------------code---------------------------------
#coding:utf-8
import csv
import xlwt
#新建excel文件
myexcel = xlwt.Workbook()
#新建sheet页
mysheet = myexcel.add_sheet("testsheet")
csvfile = open("data.csv","r")

#读取文件信息
reader = csv.reader(csvfile)
l = 0
#通过循环获取单行信息
for line in reader:
r = 0
#通过双重循环获取单个单元信息
for i in line:
#通过双重循环写入excel表格
x=0
#将第六行第二列的str转换为float
if l > 6:
if r >= 1:
#x=float(i)
x = float(i)

#print(i)
if x > 160:
print(l,r)
mysheet.write(l,r,"high")
else:
mysheet.write(l,r,i)
r=r+1
l=l+1
#最后保存到excel
myexcel.save("myexcel.xls")
-------------------------------------------code---------------------------------
如上,x=float(i)处报错ValueError:could not convert string to float: '-'
此处数据类似 16.02
如何解决。

  • 写回答

4条回答 默认 最新

  • zt3032 2018-02-04 09:24
    关注

    a="-1"
    float(a)
    -1.0
    a="-"
    float(a)
    Traceback (most recent call last):
    File "", line 1, in
    ValueError: could not convert string to float: -

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同