函数未返回列表

-1 投票
1 回答
32 浏览
提问于 2025-04-14 15:54

当我在函数里创建一个新的列表时,我想在最后把这个新列表返回,这样就可以替换掉最开始调用的那些值。不过,当返回的那一行代码执行时,实际上什么都没有发生。

def fixNumbers(list):
    newList = []
    for i in list:
        if i > 255:
            newList.append(225)       
        elif i < 0:
            newList.append(0)
        else:
            newList.append(i)
    return newList
values1 = [-10, 100, 300]
fixNumbers(values1)
print(values1)
values2 = [127, 216, 280, 250, 50, 0, -3, 20]
fixNumbers(values2)
print(values2)

1 个回答

0

在最后几行,你可以这样做:

values1 = [-10, 100, 300] 
fix_numbers_1 = fixNumbers(values1)
print(fix_numbers_1)

完整代码如下:

def fixNumbers(list):
    newList = []
    for i in list:
        if i > 255:
            newList.append(225)       
        elif i < 0:
            newList.append(0)
        else:
            newList.append(i)
    return newList
values1 = [-10, 100, 300]
fix_numbers_1 = fixNumbers(values1)
print(fix_numbers_1)

values2 = [127, 216, 280, 250, 50, 0, -3, 20]
fix_numbers_2 = fixNumbers(values2)
print(fix_numbers_2)

说明:

  • 当你调用一个函数并且它返回了某个值时,我们需要把这个返回的值存起来,这样才能使用它。

撰写回答