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

不使用列表如何按输入顺序打印符合范围要求的整数?

优化实现方案

首先你现有代码里存在一处无效逻辑:i = lst.append(i),列表的append方法返回值为None,这里的赋值操作完全没有必要,可以直接删除。

更简单的实现可以省略额外的列表存储,读取输入时直接判断是否符合条件并打印,逻辑更简洁,内存开销也更低:

x = int(input())
# 直接循环固定次数读取输入,不需要手动维护列表长度
for _ in range(x):
    num = int(input())
    if 0 < num < 50:
        print(num)

如果使用Python 3.8及以上版本,还可以用海象运算符写出更紧凑的写法(可读性稍差,仅作参考):

[print(n) for _ in range(int(input())) if 0 < (n := int(input())) < 50]

两种实现都完全符合需求:按照输入顺序打印符合0 < y <50的整数,输出结果和你的原有代码完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 14:54:01