python - 将 Python 列表作为参数,并通过交换其第一个和最后一个元素来修改列表参数

标签 python

这可以是一个无限的数字列表,到目前为止,我无法弄清楚如何在不知道列表结束位置的情况下切换列表的第一个和最后一个。 如果列表为 (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/

相关文章:

python - Python 和 C 应用程序之间的串行端口数据传输(在 Microblaze 上运行)

python - `DataFrame` 行的内存高效过滤

python - 正确使用 asyncio.Condition 的 wait_for() 方法

python - pip 在 Anaconda Prompt 中无法识别

python - 寻找更好的解决方案来在 Pandas 中创建条件列

python - Tkinter 变量观察器

当我将它放入函数中时,Python 脚本停止工作

python - 处理具有多个数据分析值的 pandas 列

python - 数组到二叉搜索树

python - 限制用作日志的 ScrolledText 内的行数