扩展vs + =行为

til*_*era -1 python

帮助我理解我在以下代码中无法识别的问题.

def extend_a_list(list_var):
    return list_var.extend([6, 2])

def plus_equals_list(list_var):
    list_var += [6]
    return list_var

list_var = [1, 2, 3]
print "Extending"
print extend_a_list(list_var)

list_var = [1, 2, 3]
print "Plus Equals"
print plus_equals_list(list_var)


>>> Extending
>>> None
>>> Plus Equals
>>> [1, 2, 3, 6]
Run Code Online (Sandbox Code Playgroud)

延伸是给予None.这是为什么?

Mat*_*711 5

Extend 什么都不返回,它修改输入的列表:

a = [1,2,3]
# a = [1,2,3]
b = a.extend([4])
# a = [1,2,3,4]
# b = None
Run Code Online (Sandbox Code Playgroud)