python元组仅使用更高阶函数删除第一个匹配外观
发布时间:2020-12-20 12:13:51 所属栏目:Python 来源:网络整理
导读:我想编写一个Rem(a,b),它返回一个类似a的新元组,删除元素b的第一个外观.例如 Rem((0,1,9,4),1)将返回(0,4). 我只允许使用更高阶函数,如lambda,filter,map和reduce. 我正在考虑使用过滤器,但这将删除所有匹配元素 def myRem(T,E): return tuple(filter(lambda
我想编写一个Rem(a,b),它返回一个类似a的新元组,删除元素b的第一个外观.例如
Rem((0,1,9,4),1)将返回(0,4). 我只允许使用更高阶函数,如lambda,filter,map和reduce. 我正在考虑使用过滤器,但这将删除所有匹配元素 def myRem(T,E): return tuple(filter(lambda x: (x!=E),T)) myRem((0,1)我会(0,4) 解决方法
以下作品(警告:hacky代码):
tuple(map(lambda y: y[1],filter(lambda x: (x[0]!=T.index(E)),enumerate(T)))) 但除非要求严格,否则我绝不会建议这样做 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |