Python 我不明白这些代码之间的区别

Python 我不明白这些代码之间的区别,python,Python,结果:[2,4,3,1,5,10] 以上是我认为有意义的 但是, data = [2, 4, 3, 1, 5, 10, 9] data.pop() print(data) 我知道了 结果:9 区别是什么?pop方法返回从列表中删除的值。 如果您试图打印该d.pop,它只返回删除的值。使用pop时,它返回列表的最后一个元素,并在内部从列表中删除最后一个元素 请注意,在第一个代码中,您正在打印列表中的数据,在第二个代码中,您正在打印pop返回的内容。在第一种情况下,您正在打印数据列表。我重新排列

结果:[2,4,3,1,5,10]

以上是我认为有意义的

但是,

data = [2, 4, 3, 1, 5, 10, 9]

data.pop()
print(data)
我知道了

结果:9


区别是什么?

pop方法返回从列表中删除的值。
如果您试图打印该d.pop,它只返回删除的值。

使用pop时,它返回列表的最后一个元素,并在内部从列表中删除最后一个元素


请注意,在第一个代码中,您正在打印列表中的数据,在第二个代码中,您正在打印pop返回的内容。在第一种情况下,您正在打印数据列表。我重新排列了代码并添加了注释,使其更易于理解:

情景1:

这里的结果是[2,4,3,1,5,10]的原因是您从列表中弹出,然后打印列表本身

情景2:

List.pop是一个从列表返回弹出值的方法。因此,通过执行printdata.pop,您请求打印单个弹出值,而不是整个数据列表

请参阅List.pop方法上的Python文档,值得一看。pop更改原始列表并返回值。一种情况是打印修改后的列表,另一种情况是打印返回值。
data = [2, 4, 3, 1, 5, 10, 9]

Print(data.pop())
data = [2, 4, 3, 1, 5, 10, 9] # the given data list
data.pop() # pop the last element off the list
print(data) # print 'data' (which is the list)
data = [2, 4, 3, 1, 5, 10, 9] # the given data list
print(data.pop()) # print the value returned by data.pop(), which is 9

# Result : 9