python-3.x 在函数中以 *args形式传递多个列表,结果为None [duplicate]

7lrncoxx  于 2023-01-06  发布在  Python
关注(0)|答案(2)|浏览(117)
    • 此问题在此处已有答案**:

Why is "None" printed after my function's output?(7个答案)
2天前关闭。
我试着把列表作为参数传递给一个函数,但是最后得到一个None。你能解释一下为什么吗?

list_1 = [1, 2, 4]
list_2 = [3, 4, 2]

def total_list(*args):
    for item in args:
        for i in item:
            print(i)

print(total_list(list_1, list_2))

结果:

1
2
4
3
4
2
None
vs3odd8k

vs3odd8k1#

print(total_list(list_1, list_2))

你还打印了total_list函数的返回值,因为你没有任何return语句,所以它的结果是None,这就是None的来源。

yx2lnoni

yx2lnoni2#

由于total_list函数没有返回值,这意味着返回值是None,当您在print中调用total_list函数时,它最终打印None
print外部调用该函数,您将看到发生了什么

def total_list(*args):
    for item in args:
        for i in item:
            print(i)

list_1 = [1, 2, 4]
list_2 = [3, 4, 2]
total_list(list_1, list_2)

输出将为

1
2
4
3
4
2

相关问题