我的目的是在不使用return的情况下更改列表。因此,我的方法是创建一个辅助函数来修改值,然后将其映射到整个列表。但是,map仅消耗一个函数和一个字符串。因此,我被卡住了。抱歉,有任何误解或误解
我有一个列表和两个边界,其中下边界将替换列表中其下方的任何数字,而上边界也将替换列表中其上方的数字。
def help(values,lower,upper):
def abc(value):
if value <= 100:
value = 100
elif value >= 0:
value = 0
else:
value
list(map (abc, values))
例如,给A=[0,1,2,3,4,5,6,7,8,9,10]
的下边界为2,上边界为8。它应返回以下列表:
[2,2,2,3,4,5,6,7,8,8,8]
检查过程就像
A=[0,1,2,3,4,5,6,7,8,9,10]
check.expect("Function",help(A,2,8),None)
check.expect("List",help(A,2,8)[2,2,2,3,4,5,6,7,8,8,8])
答案 0 :(得分:1)
仅使用根据条件设置元素的列表理解:
def rreplace(lst, l, u):
return [l if x < l else u if x > u else x for x in lst]
A = [0,1,2,3,4,5,6,7,8,9,10]
print(rreplace(A, 2, 8))
# [2, 2, 2, 3, 4, 5, 6, 7, 8, 8, 8]