如何解决错误“不能将序列乘以'float'类型的非整数”?
Posted
技术标签:
【中文标题】如何解决错误“不能将序列乘以\'float\'类型的非整数”?【英文标题】:How to solve error " can't multiply sequence by non-int of type 'float' "?如何解决错误“不能将序列乘以'float'类型的非整数”? 【发布时间】:2018-01-03 22:27:01 【问题描述】:我试图在我的 python 上创建索引,当我尝试运行它时,我得到这样的错误: 它指向我安装它的根python。而且我不知道为什么它会显示这样的错误
result = [None] * k
我已经尝试实现来自https://github.com/timgrossmann/InstaPy/issues/507 的代码,但仍然显示相同的错误。
对于可以帮助我的人,我真的很感激。谢谢
【问题讨论】:
使用整数除法len(x)//5
错误信息告诉您k
不是整数。可能是因为您使用的是/
而不是//
。
【参考方案1】:
random.sample
的第二个参数是要选择的数量,它必须是一个整数。您正在使用除法来创建该数字;在 Python 2 中,如果两个数字都是整数,这将是一个整数除法,但在 Python 3 中,它总是返回一个float
。应该使用整数除法//
:
sample_index = random.sample(range(len(x)), len(x) // 5)
【讨论】:
【参考方案2】:使用整数除法random.sample(range(len(x)), len(x)//5)
【讨论】:
以上是关于如何解决错误“不能将序列乘以'float'类型的非整数”?的主要内容,如果未能解决你的问题,请参考以下文章
如何解决颤振中的 build.gradle 错误。如何解决此错误“评估项目 ':app' 时出现问题。> 格式错误的 \uxxxx 编码。”