Python报错TypeError: 'float' object cannot be interpreted as an integer

程序:

img

结果报错:

img


TypeError: 'float' object cannot be interpreted as an integer
上网查了发现是因为range不能带浮点数,但我明明强转了整型啊

单独拉出来运行

img

结果

img

错误在num/=res[i],会使num成为浮点数,后面num放到range里就出错了
如果要整除,改成num //= res[i];

因为你num是浮点数啊,
num/=res[i] 除法会让num成为浮点数 如果要整除,改成num //= res[i];

哈喽,是float强转int出错
python2和python3中运算符的区别
查看代码中是否含有/,
python3的/结果含有浮点数!
python2中的/等价于python3的//
在python3中,//表示取整除 - 返回商的整数部分(向下取整)

num/=res[i]那里,python中除法运算得到的结果都是float类型,num又被改成了float类型