面试题答案
一键面试方法一:使用切片
my_list = [1, 2, 3, 4, 5]
print(my_list[::-1])
- 优点:代码简洁直观,不需要额外的循环逻辑,执行效率较高,因为切片操作在底层是用C实现的。
- 缺点:会创建一个新的列表对象,占用额外的内存空间,如果列表非常大,可能会对内存造成压力。
方法二:使用reversed
函数
my_list = [1, 2, 3, 4, 5]
for item in reversed(my_list):
print(item)
- 优点:不会创建新的列表对象,节省内存空间,适用于处理大列表。
reversed
返回的是一个迭代器,按需生成反向元素。 - 缺点:代码相对切片方法略长,且如果需要获取反向的列表对象,还需要将迭代器转换为列表(如
list(reversed(my_list))
),增加了额外操作。