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是编译运行的验证方法
Jan 30 Python
Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
May 22 Python
Python for Informatics 第11章之正则表达式(二)
Apr 21 Python
深入浅析python继承问题
May 29 Python
python 3.6 +pyMysql 操作mysql数据库(实例讲解)
Dec 20 Python
python实现寻找最长回文子序列的方法
Jun 02 Python
Django框架登录加上验证码校验实现验证功能示例
May 23 Python
python 实现识别图片上的数字
Jul 30 Python
Pytorch 多维数组运算过程的索引处理方式
Dec 27 Python
Python socket聊天脚本代码实例
Jan 02 Python
python 实现德洛内三角剖分的操作
Apr 22 Python
Django框架中视图的用法
Jun 10 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开发工具之vs2005图解
2008/01/12 PHP
PHP使用星号隐藏用户名,手机和邮箱的实现方法
2016/09/22 PHP
学习YUI.Ext第五日--做拖放Darg&Drop
2007/03/10 Javascript
无语,javascript居然支持中文(unicode)编程!
2007/04/12 Javascript
JS与框架页的操作代码
2010/01/17 Javascript
nodejs实用示例 缩址还原
2010/12/28 NodeJs
JSON为什么那样红为什么要用json(另有洞天)
2012/12/26 Javascript
js实现鼠标划过给div加透明度的方法
2015/05/25 Javascript
JS中的二叉树遍历详解
2016/03/18 Javascript
JS传递对象数组为参数给后端,后端获取的实例代码
2016/06/28 Javascript
微信小程序 WXML、WXSS 和JS介绍及详解
2016/10/08 Javascript
javascript中Date对象的使用总结
2016/11/21 Javascript
JS中BOM相关知识点总结(必看篇)
2016/11/22 Javascript
解析jquery easyui tree异步加载子节点问题
2017/03/08 Javascript
深入探究AngularJs之$scope对象(作用域)
2017/07/20 Javascript
vue父组件向子组件(props)传递数据的方法
2018/01/02 Javascript
vue 中 beforeRouteEnter 死循环的问题
2019/04/23 Javascript
JavaScript实现的弹出遮罩层特效经典示例【基于jQuery】
2019/07/10 jQuery
零基础写python爬虫之抓取百度贴吧代码分享
2014/11/06 Python
python标准算法实现数组全排列的方法
2015/03/17 Python
python 根据pid杀死相应进程的方法
2017/01/16 Python
对变量赋值的理解--Pyton中让两个值互换的实现方法
2017/11/29 Python
python将print输出的信息保留到日志文件中
2019/09/27 Python
python3格式化字符串 f-string的高级用法(推荐)
2020/03/04 Python
matplotlib更改窗口图标的方法示例
2021/02/03 Python
CSS3 实用技巧:实现黑白图像效果示例代码
2013/07/11 HTML / CSS
W3C公布最新的HTML5标准草案
2008/10/17 HTML / CSS
加拿大最大的五金、家居装修和园艺产品商店:RONA
2017/01/27 全球购物
中东最大的在线宠物店:Dubai Pet Food
2020/06/11 全球购物
决心书标准格式
2014/03/11 职场文书
小学生植树节活动总结
2014/07/04 职场文书
趵突泉导游词
2015/02/03 职场文书
2015年乡镇妇联工作总结
2015/05/19 职场文书
《黄山奇石》教学反思
2016/02/18 职场文书
CSS SandBox应用场景及常见问题
2022/06/25 HTML / CSS
Vue深入理解插槽slot的使用
2022/08/05 Vue.js