[英]Question about reversed lists in Python
正如您所知,我對 python 非常陌生。
如果我有一個清單:
a = [1,2,3,2,1]
這評估為真:
a == a[::-1]
...但這評估為假:
a == a.reverse()
為什么會這樣?
因為.reverse()
就地反轉列表並且不返回:
>>> print a.reverse()
None
並且a == None
評估為False
。
a.reverse()
沒有返回值,所以比較是 a==None 是假的
你可以檢查:
>>> str(a.reversed())
'None'
更好:
>>> (id(a.reverse()), id(None))
你會看到相同的地址
如果您想要列表的新副本,請改用 reversed()。
a == list(reversed(a))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.