报错信息

学习《机器学习实战》这本书时,按照书上的代码运行,产生了错误,但是在代码中没有错误提示,产生错误的代码如下:

    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++那么规范,缩进都要认真

 

 

 

 

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐