# # s[i:j:k] -> wycinek s od i do j - [i, j) - z krokiem k # s = [0, 1, 2, 3, 4] # stwórz sekwencje z elementów o indeksach [i, j), i <= j print s[1:3] print s[1:1] # [i, i) -> zbiór pusty [1, 2] [] # jeżeli i jest pominięte lub równe None, przyjmij że jest równe 0 print s[:2] # s[0:2] [0, 1] # jeżeli j jest pominięte lub równe None, przyjmij że jest równe len(s) print s[2:] [2, 3, 4] # jeżeli i lub j jest większe od len(s), użyj len(s) print s[2:800] [2, 3, 4] # dla i, j negatywnych, oblicz nowe i := len(s) + i albo j := len(s) + j print s[-1] print s[-1:1] # odpowiednik s[4, 1], ponieważ i > j dostaniemy zbiór pusty 4 [] # wybierz co k-ty element (i, i+k, i+2*k, ...) z sekwencji pomiędzy indeksami [i, j) print s[0:4:2] print s[::2] # s[0:len(s):2] -> s[0:4:2] [0, 2] [0, 2, 4] # jeżeli i lub j są pominięte stają się wartościami końcowymi ("end"), to jaka to # wartość końcowa, zależy od znaku k # dla k < 0, sekwencja będzie odwrócona, czyli s' := [4, 3, 2, 1, 0] print s[::-1] # odpowiednik -> s'[0:len(s):-1] print s[::-2] # odpowiednik -> s'[0:len(s):-1] print s[:2:-1] # odpowiednik -> s'[0:2:-1] [4, 3, 2, 1, 0] [4, 2, 0] [4, 3] # k nie może być równe 0 print s[1:4:0] # Wyjątek! ValueError: slice step cannot be zero
ekstaza, geniusz, przebłysk, olśnienie, półprawdy, półśrodki, przemilczenia, zaćmienia, głupstwa, kłamstewka, oszustwa, hultajstwo, wyrachowanie, nieprawda, nieobiektywność, niepodważalna prawda, nierówność, nieomylność, słuszność, perfekcja, krnąbrność ... niegodziwość
11 stycznia 2014
[python] Wykrajanie sekwencji
Wykrajanie (slice) sekwencji:
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz