我目前正在学习 Python 中的 pop()
函数并有一个问题。
>>> a = [1,2,3,4]
>>> a.pop(3) #or a.pop()
4
>>> print(a)
[1,2,3]
我知道 pop()
函数删除并返回对应于索引的元素的值。但是,以下示例是我感到困惑的原因:
>>> a = [1,2,3,4]
>>> def solution(array):
array.pop()
return array
>>> solution(a)
[1,2,3]
首先,我知道我描述的函数返回 [1,2,3]。但是,为什么它不返回 pop()
值呢?它不应该返回 4
因为 solution()
中的 pop()
函数有一个 pop()
函数,在定义中,返回弹出元素的值??我认为这个 pop()
函数有点像同时执行 del
和 print
函数。
最佳答案
当您在 array.pop()
之后调用 return
数组时,它将返回除 pop
元素之外的其余元素。因为您返回的不是所有特定的弹出操作的数组。返回 array.pop()
而不是 array
def solution(array):
return array.pop()
或者您可以通过另一种方式存储 pop 元素,然后返回 pop 变量。
def solution(array):
pop_op=array.pop()
return pop_op
关于python - Pop() 在函数内部时不返回任何值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65164681/