从整数值比较中获取布尔值列表

时间:2019-12-17 12:56:46

标签: python-3.x

我正在寻找创建一个函数,该函数从一个值整数返回一个True和False列表,而不是一个整数列表,但我不知道如何从该函数返回True,False列表。

TIA

这是我的代码:

num = 7
numListLength = [7, 7, 0]

def compareList():
    for num in numListLength:
        if num == numListLength:
            return True
        else:
            return False

print(compareList())

我想要的结果是这样的列表:

[True, True, False]

3 个答案:

答案 0 :(得分:1)

使用列表理解

例如:

num = 7
numListLength = [7, 7, 0]

def compareList():
    return [number == num for number in numListLength]

print(compareList())
# --> [True, True, False]

注意:在您的解决方案中,您将在第一次比较后返回该值,而您可以将比较结果附加到列表中并返回。

答案 1 :(得分:1)

您可以在下面找到一些逐步的代码,并进行了更正。另外请注意,您的if语句并不完全正确,并且您混合使用了变量n。示例如下:

num = 7
numListLength = [7, 7, 0]

def compareList():
    global numListLength
    results = []
    for val in numListLength:
        if val == num:
            results.append(True)
        else:
            results.append(False)
    return results

print(compareList())

答案 2 :(得分:0)

您可以使用map运算符,然后提供一个将项目数量与数量进行比较的功能。

num = 7
numListLength = [7, 7, 0]

result = list(map(lambda a: a == num, numListLength))
print(result)

将给出结果[True, True, False]