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基于正则表达式实现检查文件内容的方法【文件检索】
Aug 30 Python
放弃 Python 转向 Go语言有人给出了 9 大理由
Oct 20 Python
纯python实现机器学习之kNN算法示例
Mar 01 Python
Python用5行代码写一个自定义简单二维码
Oct 21 Python
python多个模块py文件的数据共享实例
Jan 11 Python
Python面向对象程序设计类的多态用法详解
Apr 12 Python
关于python多重赋值的小问题
Apr 17 Python
Python使用matplotlib实现交换式图形显示功能示例
Sep 06 Python
Python的缺点和劣势分析
Nov 19 Python
python中的django是做什么的
Jul 31 Python
深度学习小工程练习之垃圾分类详解
Apr 14 Python
Matlab求解数组中的最大值及它所在的具体位置
Apr 16 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
为什么那些咖啡爱好者大多看不上连锁咖啡店?
2021/03/06 咖啡文化
Javascript的一种模块模式
2008/03/22 Javascript
JS解密入门之凭直觉解
2008/06/25 Javascript
5秒后跳转效果(setInterval/SetTimeOut)
2013/05/03 Javascript
基于JavaScript实现继承机制之原型链(prototype chaining)的详解
2013/05/07 Javascript
JQuery选择器绑定事件及修改内容的方法
2015/01/23 Javascript
javascript制作sql转换为stringBuffer的小工具
2015/04/03 Javascript
javascript实现删除前弹出确认框
2015/06/04 Javascript
jQuery实现在最后一个元素之前插入新元素的方法
2015/07/18 Javascript
浅析JavaScript中的对象类型Object
2016/05/26 Javascript
基于javascript实现按圆形排列DIV元素(一)
2016/12/02 Javascript
javascript阻止事件冒泡和浏览器的默认行为
2017/01/21 Javascript
Bootstrap模态框插件使用详解
2017/05/11 Javascript
JS设计模式之数据访问对象模式的实例讲解
2017/09/30 Javascript
puppeteer库入门初探
2019/01/09 Javascript
微信小程序基于canvas渐变实现的彩虹效果示例
2019/05/03 Javascript
vue element upload实现图片本地预览
2019/08/20 Javascript
利用Python实现简单的相似图片搜索的教程
2015/04/23 Python
Python获取运行目录与当前脚本目录的方法
2015/06/01 Python
Python中二维列表如何获取子区域元素的组成
2017/01/19 Python
python绘制立方体的方法
2018/07/02 Python
Python 读写文件的操作代码
2018/09/20 Python
python3.x实现base64加密和解密
2019/03/28 Python
Python常见数据类型转换操作示例
2019/05/08 Python
django框架两个使用模板实例
2019/12/11 Python
Python如何在DataFrame增加数值
2020/02/14 Python
tensorflow使用CNN分析mnist手写体数字数据集
2020/06/17 Python
WoolOvers爱尔兰:羊绒、羊毛和棉针织品
2017/01/04 全球购物
美国最大和最受信任的二手轮胎商店:Bestusedtires.com
2020/06/02 全球购物
2014教师党员自我评议总结
2014/09/19 职场文书
师德师风主题教育活动总结
2015/05/07 职场文书
幼儿园园长工作总结2015
2015/05/25 职场文书
2016年党员承诺书范文
2016/03/24 职场文书
导游词之南迦巴瓦峰
2019/11/19 职场文书
SQL Server代理:理解SQL代理错误日志处理方法
2021/06/30 SQL Server
Python中Numpy和Matplotlib的基本使用指南
2021/11/02 Python