【问题标题】:How to use lambda function for multiple classification?如何使用 lambda 函数进行多重分类?
【发布时间】:2021-10-22 06:04:25
【问题描述】:
lambda r: 'red' if r == 1 elif 'yellow' r== 2 elif 'green' r==3 elif 'blue' r== 4 else 'black'

我想要这样的东西,但不知道该怎么做。

【问题讨论】:

标签: python if-statement lambda classification svc


【解决方案1】:
func = lambda r: {1:'red',2:'yellow',3:'green',4:'blue'}.get(r,'no such color')
print(func(2)) # yellow

【讨论】:

    【解决方案2】:

    在这种情况下,我会使用常规的def 函数。

    如果我必须使用lambda,根据你想要做什么,我会这样做:

    lambda r: ("red", "yellow", "green", "blue")[r - 1] if 1 <= r <= 4 else "black"
    

    【讨论】:

      【解决方案3】:

      正如其他人回答的那样,也许 lambda 并不是解决这个问题的最佳方法。

      但如果你真的想要一个 lambda,下面是正确的语法:

      lambda r: 'red' if r == 1 else 'yellow' if r == 2 else 'green' if r == 3 else 'blue' if r == 4 else 'black'
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-10-13
        • 2021-02-17
        • 2020-06-26
        • 1970-01-01
        • 2021-04-11
        • 2012-11-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多