首页 > 解决方案 > 如何通过函数修改全局列表而不返回值

问题描述

我正在学习python。我应该创建一个带有两个参数的函数。其中第一个必须是列表,第二个必须是整数。如果它不是整数,它必须断言错误。列表必须添加整数,然后按升序排序。通过第一个参数传递的列表必须修改但不能返回。我被困住了。我不知道如何在没有回报的情况下实现这一目标。不要给我答案,只是指出我正确的方向。

def my_insert(lista, num):
    assert (type(num) is int)
    lista.append(num)
    lista = sorted(lista)
     
l = [1, 3, 5]
my_insert(l, 4)
print(l)

打印应该打印 [1, 3, 4, 5] 而不是 [1, 3, 5, 4]

标签: pythonpython-3.xlist

解决方案


只需使用“lista.sort()”而不是“sorted(lista)”。

def my_insert(lista, num):
        assert (type(num) is int)
        lista.append(num)
        lista.sort()

推荐阅读