You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python入门求助:列表元素筛选任务的实现方法咨询

解决方案与提示

先说说你原代码里的问题:

  • lst.append(inputs) 这个方法没有返回值(实际返回None),所以直接print它会输出None,正确做法是先调用lst.append(inputs),再单独打印列表。
  • 你没处理输入等于5的情况,而且当前逻辑只处理单个用户输入,和任务要求的基于给定列表a处理的需求不符。

基础任务:输出列表a中所有小于5的元素

给定列表:

a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

直接遍历打印符合条件的元素:

for num in a:
    if num < 5:
        print(num)

附加任务1:创建新列表并输出

遍历原列表,将符合条件的元素存入新列表,最后输出新列表:

a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
new_lst = []
for num in a:
    if num < 5:
        new_lst.append(num)
print(new_lst)

附加任务2:一行代码实现

用列表推导式可以一行完成新列表生成与输出:

a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
print([num for num in a if num < 5])

附加任务3:结合用户输入实现

先获取用户输入并转为整数,再筛选出原列表中小于该数的元素:

a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
try:
    user_num = int(input("请输入一个数字:"))
    result = [num for num in a if num < user_num]
    print(result)
except ValueError:
    print("请输入有效的整数!")

加try-except是为了处理用户输入非整数的情况,避免程序直接报错。


内容的提问来源于stack exchange,提问作者Alexander Stolle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 23:30:57