还记得上次面试的时候,面试官问我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)
简直鹅妹子嘤!