【问题标题】:Python TypeError: 'float' object cannot be interpreted as an integerPython TypeError:'float'对象不能解释为整数
【发布时间】:2016-01-26 03:13:29
【问题描述】:

我的代码:

for i in range( 3.3, 5 ):
        print( i )

以上代码必须打印:

3.300000

4.300000

但是 Python 3.4.0 的解释器打印了以下错误:

TypeError: 'float' 对象不能被解释为整数

【问题讨论】:

  • range() 使用整数,而不是小数值。

标签: python-3.4


【解决方案1】:

range() 适用于整数而不是浮点数,但您可以构建自己的范围生成器来满足您的需求:

def frange(start, stop, step=1):
    i = start
    while i < stop:
        yield i
        i += step

for i in frange(3.3, 5) 会给你想要的结果。

但请注意,frangerange 不同,但与 xrange 类似,将返回生成器而不是列表。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-10
    • 1970-01-01
    相关资源
    最近更新 更多