1. 程式人生 > >Python 論list倒置的幾種方法

Python 論list倒置的幾種方法

    還記得上次面試的時候,面試官問我Python中list倒置的方法有哪幾種。我吭哧了半天,只寫出了一種。當時面試官提醒我用切片,然而我沒有能當場寫出來。現在來彌補一下。

    平時印象中Python的切片一般都是例如L[0:3]這種的,只顯示首尾區間。實際上還有一種切片寫法,為L[0:3:1],表示區間為[1,3),步距為1(注意區間是左閉右開的)。這種寫法其實跟MATLAB挺像的。不寫區間範圍的話,預設為原list,因此L[:]和L[::]都表示原list。根據以上推算,想要倒置list,只需要對原list取負步距-1,即每次回退一個即可得到。方法如下:

printL[::-1]

    Python中還提供了內建的排序函式sorted(),用法如下:

sorted(L,key=abs)

    反向排序可傳入第三個引數reverse,用法如下: 

sorted(L,key=abs,reverse=True)

    今天看到一個超級牛的使用切片判斷回數(如1234321)的方法,使用if判斷語句

if str(n)[::-1]==str(n)

    簡直鵝妹子嚶!