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

Python中不使用for循环实现输入反转并删除0字符的方法

优化方案

你原有实现的核心问题在于频繁调用list.insert(0, i),该操作每次都要移动列表内所有已存储元素,整体时间复杂度为O(n²),长文本输入下性能损耗明显,且最终输出为字符列表,如果需要字符串结果还要额外拼接。

最优简洁实现

直接利用Python字符串内置操作,时间复杂度O(n),仅需2行即可完成需求:

# 先删除所有0,再通过切片反转字符串
res = input().replace('0', '')[::-1]
print(res)

如果需要和原有代码一致输出列表格式,修改打印语句即可:

print(list(res))

其他等效实现方式

如果需要显式遍历逻辑,也可以改用生成器+反转函数的写法,可读性更强:

res = ''.join(c for c in reversed(input()) if c != '0')
print(res)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 19:15:07