Python报错:int() argument must be a string, a bytes-like object or a number, not 'list'
报错信息学习《机器学习实战》这本书时,按照书上的代码运行,产生了错误,但是在代码中没有错误提示,产生错误的代码如下:sortedClassCount = sorted(classCount.iteritems(),key = operator.itemgetter(1), reverse = True) #排序报错如下: 错误原因首先我们先看一下报错:...
文章共387字 · 阅读需要大约2分钟
一键AI生成摘要,助你高效阅读
问答
·
报错信息
学习《机器学习实战》这本书时,按照书上的代码运行,产生了错误,但是在代码中没有错误提示,产生错误的代码如下:
sortedClassCount = sorted(classCount.iteritems(),key = operator.itemgetter(1), reverse = True) #排序
报错如下:
错误原因
首先我们先看一下报错:
TypeError: int() argument must be a string, a bytes-like object or a number, not 'list'
翻译过来是:
类型错误:int()参数必须是字符串、对象或数字之类的字节,而不是“list”
报错位置为:
classNumberStr = int(fileStr.split('_'))[0]
通过对源代码的分析,原因是参数传错了。
根本原因在于:上面这一条代码有问题 ,导致参数传输错误。
解决方案
将代码改为如下:
classNumberStr = int(fileStr.split('_')[0])
然后运行就可以啦!
给大家的忠告:一定要细心,一定要细心,特别是Python,没有C++那么规范,缩进都要认真。
更多推荐
已为社区贡献16条内容
所有评论(0)