我正在尝试通过列表理解来找出下面显示的结果:

问题描述 投票:-1回答:3

我正在尝试通过列表理解来找出下面显示的结果:

def assignment_02a(numbers):
    result = []
    for i in numbers:
        if i > 5:
            result.append('higher')
        else:
            result.append('lower')

    return result

numbers=[8,3,7]
assignment_02a(numbers)

答案:['higher', 'lower', 'higher']

我已经尝试过此代码:

[i>5 for i in range(4,8) ]

我知道了:[False, False, True, True]

我希望输出为:['lower', 'lower', 'higher', 'higher']

python python-3.x
3个回答
1
投票

嗯,您的list comp函数仅在测试更高/更低,而不是替换结果。您可以通过多种方式来执行此操作,但为了与事物的精神保持一致,可以从地图中引用字符串。


2
投票

请仔细阅读Link,找到该问题的解决方案。


0
投票
[{True:'higher', Talse:'lower'}[i>5] for i in range(4,8)]
© www.soinside.com 2019 - 2024. All rights reserved.