2015-11-15 46 views

回答

2
"loops"[-1:1:-1] 

讓我們來看看如何slicing works

s[i:j:k] - 的s片從ij步驟k

如果ij爲負,該指數是相對的結束字符串:len(s) + ilen(s) + j被替換。但請注意,-0仍然爲0

sij切片與步驟k被定義爲物品的具有索引x = i + n*k使得0 <= n < (j-i)/k序列。換句話說,指數是i,i+k,i+2*k,i+3*k等等,當達到j(但從未包括j)時停止。如果ij大於len(s),則使用len(s)。如果省略ijNone,則它們變爲「結束」值(其結束取決於k的符號)。請注意,k不能爲零。如果kNone,則將其視爲1

所以[-1:1:-1]意味着i = -1j = 1k = -1

i是負數,所以i = -1表示i = len(s) + (-1) = len(s) - 1len(s)5,所以我們得到以下片段:"loops"[4:1:-1]

根據以上定義,我們現在具有以下指標的項目:4,4 - 1 = 3,4 - 2 = 2。我們停在4 - 3 = 1因爲這是我們的目標,我們不包括這一點。

所以結果是索引4, 3, 2,這是'spo'

最後,該字符串乘以2,該字符串重複一次:'spospo'

+0

感謝您的幫助! –