这可以是一个无限的数字列表,到目前为止,我无法弄清楚如何在不知道列表结束位置的情况下切换列表的第一个和最后一个。 如果列表为 (1,2,3,4,5),则输出应为 (5,2,3,4,1) 真的很困难,第一语言,想知道是否有人可以提供一些帮助!
def swapFirstAndLast(list):
for position in range(0, len(list)):
list[position] =
list[position] =
最佳答案
我假设你的意思不是一个无限的数字列表,它不适合内存,而是一个任何可能大小的列表。好吧,你总是知道 Python 中列表的最后一个位置。它始终是列表的长度减一:
my_list[len(my_list) - 1]
Python list
对象还可以轻松支持负索引,因此上面的内容可以缩短为:
my_list[-1]
因此,要交换第一个和最后一个元素,只需执行以下操作:
my_list[0], my_list[-1] = my_list[-1], my_list[0]
注意,上面是 python 的一个很好的小功能,通常在语言中你被迫使用临时变量交换元素:
temp = my_list[0]
my_list[0] = my_list[-1]
my_list[-1] = temp
关于python - 将 Python 列表作为参数,并通过交换其第一个和最后一个元素来修改列表参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47116015/