为什么这给了我" TypeError:类型' int'的参数是不可迭代的#34;当我将列表转换为字符串时

时间:2017-09-25 22:14:31

标签: python

为什么这会给我:

  

" TypeError:类型' int'的参数不可迭代"

当我将列表转换为字符串时:

def giveMeFive (start, end):
    numbers = list(range(start,end))
    for x in numbers:
        [str(x) for x in numbers]
        if str(5) in x:
            return x

3 个答案:

答案 0 :(得分:0)

你可以使用这段代码

def giveMeFive (start, end):
    numbers = list(range(start,end))
    return numbers.index(5)

答案 1 :(得分:0)

当您单独编写[str(x) for x in numbers]时,您正在创建一个新的字符串列表,然后立即将其丢弃。您必须将其保存在变量中才能保留它。

尝试

def giveMeFive (start, end):
    numbers = list(range(start,end))
    strings = [str(x) for x in numbers]
    for x in strings:
        if str(5) in x:
            return x

现在,您的代码中存在更多错误,但希望这会让您失败。

答案 2 :(得分:0)

为了更清楚,此代码旨在返回包含字符串" 5"的特定范围内的所有数字。