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

Python列表reverse()方法调用返回None问题求助

为什么调用list.reverse()直接打印会输出None?

嘿,这个坑我刚学Python的时候也踩过!让我给你掰扯清楚到底咋回事~

首先得搞明白Python里列表的reverse()方法的特性:它是原地修改原列表的——意思就是它会直接把你的wishPlaces列表里的元素顺序反转过来,但这个方法本身的返回值是None!

咱们拆解下你的两种写法:
第一种写法里:

wishPlaces = ["Tokyo","Hong Kong","New York","Paris","London"]
print("\n"+str(wishPlaces.reverse()))

你是把wishPlaces.reverse()的返回值(也就是None)转成字符串打印,那输出自然就是None了——其实这时候原列表已经被反转了,只是你没打印原列表而已。

而第二种写法:

wishPlaces = ["Tokyo","Hong Kong","New York","Paris","London"]
wishPlaces.reverse()
print("\n"+str(wishPlaces))

你先调用reverse()修改了原列表,然后打印的是已经被反转后的原列表,所以能得到正确的结果。

如果想在一行代码里完成反转并打印,又不想修改原列表的话,其实可以用切片语法:

wishPlaces = ["Tokyo","Hong Kong","New York","Paris","London"]
print("\n"+str(wishPlaces[::-1]))

这个切片[::-1]会返回一个新的反转后的列表,不会改动原列表,这样就能直接打印出你想要的反转结果啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 08:09:11