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

为什么Python列表调用reverse()后输出None?如何实现姓名顺序反转

问题根因

输出结果为None的核心原因:

  • Python的list.reverse()是原地调整列表元素顺序的方法,本身不返回反转后的列表。Python中没有显式返回值的方法,默认会返回None。你把这个方法的执行结果赋值给变量a,拿到的自然就是None;实际上列表的反转操作已经直接作用在最初拆分得到的fn变量上,并没有生成新的列表对象。
能达成目标格式的正确实现

想要最终输出LastName FirstName的格式,有两种常用实现方式:

  1. 适配reverse()的原地修改特性,不额外接收方法返回值,反转原列表后再拼接成目标格式打印:
fn = "FirstName LastName".split(" ")
# 直接执行反转操作,修改原列表
fn.reverse()
# 用空格将反转后的列表元素拼接为目标字符串
print(" ".join(fn))
  1. 如果需要拿到独立的反转结果赋值给变量、且不改动原列表,可以使用列表切片的反转写法——这种写法会生成全新的反转列表,有明确可赋值的返回值:
fn = "FirstName LastName".split(" ")
a = fn[::-1]
print(" ".join(a))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.28 21:45:10