问题描述

是在python 对mysql数据进行读取后,进行数据操作时候出现的错误。ValueError: could not convert string to float 发生这个错误的通常原因都是:要转换成浮点数的字符串中包含 非数字字符 的东西,比如空字符串、字母都不可以转换为浮点数。

问题解决

(1)检查自己的字符串的格式是否正确

s.isspace()

(2)删除字符串中的空白字符

s.strip(rm) # 删除s开头、结尾的rm
s.lstrip(rm) # 删除s开头的rm
s.rstrip(rm) # 删除s结尾的rm

当 rm 为空时,默认删除空白字符,包括:\n,\r,\t

但当我添加去除字符串中的空白字符的方法后,发现依旧还是报这个错,在循环中我输出了每次读取数据返回的结果,发现有一条python通过mysql查询出来的返回结果是空,所以操作mysql读取数据的时候还得考虑查询为空的情况,还要进行空集判断

 db = pymysql.connect("localhost", "用户名", "口令", "数据库", charset='utf8' )
  cursor = db.cursor()
  cursor.execute(sqlt)
  results = cursor.fetchall()
  if len(results) !=0:
  	 print("返回结果为空")
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐