You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Lambda表达式排序报错:仅asc模式正常运行,其他选项出错

Lambda表达式实现列表排序的报错修复

错误原因分析

  • sorted函数的reverse参数要求传入布尔值(True/False),原代码里写的reverse="True"是字符串类型,会触发类型错误;
  • 当输入为"none"时,原代码直接把字符串"none"传给reverse,既不符合参数类型要求,也没实现“不排序返回原列表”的需求。

修正后的代码

y = input("Write 'asc','dec', 'none'")
converter = lambda x: sorted(x) if y == "asc" else (sorted(x, reverse=True) if y == "dec" else x)
print(converter(x=[1,2,4,6,10,0,8,5]))

修正说明

  • 将reverse="True"改为reverse=True,传入正确的布尔值;
  • "none"分支直接返回原列表x,实现不排序的需求;
  • 调整Lambda的嵌套逻辑,让条件判断更清晰,避免参数类型错误。

内容的提问来源于stack exchange,提问作者hunny

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 01:06:19