面试题答案
一键面试- 使用列表推导式实现筛选:
nums = [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] new_nums = [num for num in nums if num % 3 == 0 and num > 10] print(new_nums)
- 列表推导式相较于传统循环的优势:
- 代码简洁:列表推导式用一行代码就完成了筛选和构建新列表的操作,而传统循环通常需要更多的代码行数,例如:
对比可知,列表推导式代码更紧凑,可读性更高。nums = [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] new_nums = [] for num in nums: if num % 3 == 0 and num > 10: new_nums.append(num) print(new_nums)
- 执行效率略高:列表推导式是用 C 语言实现的,在创建列表时速度比普通的 Python 循环更快。它在底层优化了迭代和条件判断的过程,减少了 Python 解释器的循环开销。