[轉]python 中的[:-1]和[::-1]


轉自:https://blog.csdn.net/mingyuli/article/details/81604795

1、案例解釋
a='python'
b=a[::-1]
print(b) #nohtyp
c=a[::-2]
print(c) #nhy
#從后往前數的話,最后一個位置為-1
d=a[:-1] #從位置0到位置-1之前的數
print(d) #pytho
e=a[:-2] #從位置0到位置-2之前的數
print(e) #pyth


2、用法說明
b = a[i:j]   表示復制a[i]到a[j-1],以生成新的list對象

a = [0,1,2,3,4,5,6,7,8,9]
b = a[1:3]   # [1,2]
當i缺省時,默認為0,即 a[:3]相當於 a[0:3]
當j缺省時,默認為len(alist), 即a[1:]相當於a[1:10]
當i,j都缺省時,a[:]就相當於完整復制一份a

b = a[i:j:s]表示:i,j與上面的一樣,但s表示步進,缺省為1.
所以a[i:j:1]相當於a[i:j]
當s<0時,i缺省時,默認為-1. j缺省時,默認為-len(a)-1
所以a[::-1]相當於 a[-1:-len(a)-1:-1],也就是從最后一個元素到第一個元素復制一遍,即倒序。


 

轉自:https://www.cnblogs.com/mxh1099/p/5804064.html

python 中的[::-1]

 

for value in rang(10)涉及的數字倒序輸出:

  for value in rang(10)[::-1]涉及的數字倒序輸出:

一、反轉

二、詳解

這個是python的slice notation的特殊用法。

a = [0,1,2,3,4,5,6,7,8,9]
b = a[i:j] 表示復制a[i]到a[j-1],以生成新的list對象
b = a[1:3] 那么,b的內容是 [1,2]
當i缺省時,默認為0,即 a[:3]相當於 a[0:3]
當j缺省時,默認為len(alist), 即a[1:]相當於a[1:10]
當i,j都缺省時,a[:]就相當於完整復制一份a了

b = a[i:j:s]這種格式呢,i,j與上面的一樣,但s表示步進,缺省為1.
所以a[i:j:1]相當於a[i:j]
當s<0時,i缺省時,默認為-1. j缺省時,默認為-len(a)-1
所以a[::-1]相當於 a[-1:-len(a)-1:-1],也就是從最后一個元素到第一個元素復制一遍。所以你看到一個倒序的東東。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM