我正在学习 Python,练习之一是对数组中的值重新排序
x = ['a', 'b', 'c']
到
x = ['c', 'a', 'b']
解决办法是
x.append(x.pop(0))
我的问题是,由于
x.pop(0)
位于 x.append()
的括号内,那么 append()
如何知道 x[0]
的值是多少,因为 pop()
方法删除了它,因为首先评估括号内的表达式?我的直觉告诉我它不应该起作用,因为没有附加价值,但它确实起作用。我想了解为什么。
希望我的问题有意义。
pop
方法返回它删除的元素,因此x.append(x.pop(0))
相当于:
removed_element = x.pop(0)
x.append(removed_element)
pop
方法返回弹出的值。因此,评价变成
x.append('a')