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

Python反向打印列表中的浮点数时输出None是什么原因?

问题原因
  • Python中列表的reverse()方法为原地操作,仅修改原列表的元素排序,无返回值,默认返回None,你直接打印该方法的执行结果,输出自然全部为None。
  • 你的代码逻辑存在冗余错误:遍历列表的每一个元素时都执行一次反转操作,会导致列表不断在正序、倒序之间来回切换,完全不需要在循环内执行反转。
正确实现方式

方案1:原地反转后遍历(会修改原列表)

nums = [1.4, 1.2054, 2.2, 2.5, 3.66, 3.0, 4.024, 4.00001, 5.5, 5.1]
nums.reverse()
for num in nums:
    print(num)

方案2:切片反转(不修改原列表)

通过[::-1]切片语法直接生成反转后的新列表,不会改动原列表内容:

nums = [1.4, 1.2054, 2.2, 2.5, 3.66, 3.0, 4.024, 4.00001, 5.5, 5.1]
for num in nums[::-1]:
    print(num)

方案3:用reversed()内置函数(不修改原列表)

reversed()会返回一个反转迭代器,遍历效率更高且不会改动原列表:

nums = [1.4, 1.2054, 2.2, 2.5, 3.66, 3.0, 4.024, 4.00001, 5.5, 5.1]
for num in reversed(nums):
    print(num)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 17:24:08