Python TypeError: ‘float‘ object is not subscriptable错误解决


Posted in Python onDecember 24, 2022

前言

其实就是个小问题,但是爆出来的时候也很莫名其妙。因为之前都跑得好好的,只是换了不同的文件去跑才出的问题,关键是不同的文件要处理的内容和格式都是完全一样的,一个顺利跑完,一个就报TypeError: ‘float’ object is not subscriptable这个错,就非常无语。接下来就是看看怎么解决问题了:

一开始自然是直接搜索问题,寻找解决办法,实话实说,看了一些博客,但是并没有直接找到解决办法,但是从中获得了一些想法,对问题理解更清楚一点。下面是找到的一种解释:

Python TypeError: ‘float‘ object is not subscriptable错误解决

然后说一下我的具体应用:

我需要从预测生成的 json文件获取预测分数score和预测位置(坐标值)把它们写入txt文档:

ff = open('xx.txt','w')
for anno in annos:
	score = anno['score']
	left,top,right,bottom = anno['box']
	ff.write("%s %s %s %s %s\n" %(score[:6], str(int(left)), str(int(top)),str(int(right)),str(int(bottom))))
ff.close()

json文件内容格式:

{
	"annos":[
		{
			"score":0.999976544,
			"box":[
				145.436234753274657
				456.312645236453657
				254.327564356457435
				553.957943578765678
				]
		},
		{
			"score":0.9996542376,
			"box":[
				344.436234753274657
				987.312645236453657
				423.327564356457435
				234.957943578765678
				]
		},
		...
	]
}

具体问题是在执行写入的时候出现的:

ff.write("%s %s %s %s %s\n" %(score[:6], str(int(left)), str(int(top)),str(int(right)),str(int(bottom))))

一开始我的关注点是放在box的内容读取上,他是四个浮点数位于一个列表下,而且搜到的方法也和列表内容相关

后面通过我的控制变量试验后发现这里是没问题的,所以问题就是score[:6]的写入报了错

我的解决办法是:

"""先把读取到的score转化为字符,再进行写入"""
xx = str(anno['score'])
ff.write("%s %s %s %s %s\n" %(xx[:6], str(int(left)), str(int(top)),str(int(right)),str(int(bottom))))

如上就可以顺利执行了,没报TypeError: ‘float’ object is not subscriptable

原先想过,直接把str加在最后一句上,即:

ff.write("%s %s %s %s %s\n" %(str(score[:6]), str(int(left)), str(int(top)),str(int(right)),str(int(bottom))))

发现还是会报错,也就是说直接写的时候读的不能是浮点型数据(可能是此处直接从annos的列表中读取出来的浮点数据不能直接处理),即使经过中间处理也不行,需要转化为字符型后再写入即可解决

其实这个问题更像一个bug并不是一定会出现的问题,如果报错了,

就要花时间解决一下。

总结

到此这篇关于Python TypeError: ‘float‘ object is not subscriptable错误解决的文章就介绍到这了,更多相关TypeError: ‘float‘ object is not subscriptable内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python 生成目录树及显示文件大小的代码
Jul 23 Python
详解Django中的过滤器
Jul 16 Python
Python压缩解压缩zip文件及破解zip文件密码的方法
Nov 04 Python
Python使用matplotlib模块绘制图像并设置标题与坐标轴等信息示例
May 04 Python
Django框架实现逆向解析url的方法
Jul 04 Python
不知道这5种下划线的含义,你就不算真的会Python!
Oct 09 Python
在python环境下运用kafka对数据进行实时传输的方法
Dec 27 Python
python代理工具mitmproxy使用指南
Jul 04 Python
PyPDF2读取PDF文件内容保存到本地TXT实例
May 12 Python
Python类成员继承重写的实现
Sep 16 Python
Visual Studio Code搭建django项目的方法步骤
Sep 17 Python
Python代码,能玩30多款童年游戏!这些有几个是你玩过的
Apr 27 Python
python 使用pandas读取csv文件的方法
Dec 24 #Python
Python使用pandas导入csv文件内容的示例代码
Dec 24 #Python
python如何利用cv2.rectangle()绘制矩形框
Dec 24 #Python
Python中np.random.randint()参数详解及用法实例
Sep 23 #Python
Python中tqdm的使用和例子
Sep 23 #Python
python 镜像环境搭建总结
Sep 23 #Python
Python创建SQL数据库流程逐步讲解
Sep 23 #Python
You might like
PHP 检查扩展库或函数是否可用的代码
2010/04/06 PHP
PHP SPL标准库之接口(Interface)详解
2015/05/11 PHP
Laravel 模型关联基础教程详解
2019/09/17 PHP
window.open的页面如何刷新(父页面)上层页面
2012/12/28 Javascript
JavaScript的漂亮的代码片段
2013/06/05 Javascript
JavaScript 中的日期和时间及表示标准介绍
2013/08/21 Javascript
AngularJS优雅的自定义指令
2016/07/01 Javascript
Angular 2.0+ 的数据绑定的实现示例
2017/08/09 Javascript
import与export在node.js中的使用详解
2017/09/28 Javascript
微信小程序云开发之模拟后台增删改查
2019/05/16 Javascript
JavaScript实现轮播图片完整代码
2020/03/07 Javascript
vue-cli3项目配置eslint代码规范的完整步骤
2020/09/10 Javascript
python 合并文件的具体实例
2013/08/08 Python
tornado捕获和处理404错误的方法
2014/02/26 Python
python文件写入write()的操作
2019/05/14 Python
详解Python 重学requests发起请求的基本方式
2020/02/07 Python
python实现单机五子棋
2020/08/28 Python
以设计师精品品质提供快速时尚:PopJulia
2018/01/09 全球购物
澳大利亚领先的在线葡萄酒零售商:Get Wines Direct
2018/03/27 全球购物
俄罗斯有趣和原创礼物网上商店:MagicMag
2019/08/01 全球购物
如果有两个类A,B,怎么样才能使A在发生一个事件的时候通知B
2016/03/12 面试题
酒店工作职员求职简历的自我评价
2013/10/23 职场文书
授权委托书怎么写
2014/04/03 职场文书
预防煤气中毒方案
2014/06/16 职场文书
环境保护与污染治理求职信
2014/07/16 职场文书
自我管理的活动方案
2014/08/25 职场文书
个人授权委托书范文
2014/09/21 职场文书
无子女夫妻离婚协议书(4篇)
2014/10/20 职场文书
2014年幼儿园工作总结
2014/11/10 职场文书
2014年客服工作总结与计划
2014/12/09 职场文书
2015年幼儿园安全工作总结
2015/05/12 职场文书
冲出亚马逊观后感
2015/06/03 职场文书
平凡的世界读书笔记
2015/06/25 职场文书
网络安全倡议书(3篇)
2019/09/18 职场文书
Mysql中where与on的区别及何时使用详析
2021/08/04 MySQL
Mysql Innodb存储引擎之索引与算法
2022/02/15 MySQL