Felie Python ()

Funcția slice () returnează un obiect slice care poate fi folosit pentru a tăia șiruri, liste, tupluri etc.

Obiectul slice este folosit pentru a tăia o secvență dată (șir, octeți, tuplu, listă sau interval) sau orice obiect care acceptă protocolul de secvență (instrumente __getitem__()și __len__()metodă).

Sintaxa lui slice()este:

 felie (start, stop, step)

slice () Parametri

slice() poate lua trei parametri:

  • start (opțional) - Întreg de pornire de unde începe felierea obiectului. Implicit Nonedacă nu este furnizat.
  • oprire - Număr întreg până la care are loc felierea. Slicing se oprește la index stop -1 (ultimul element) .
  • pas (opțional) - valoarea întregului care determină creșterea între fiecare index pentru feliere. Valori implicite Nonedacă nu sunt furnizate.

Exemplul 1: Creați un obiect felie pentru feliere

 # contains indices (0, 1, 2) result1 = slice(3) print(result1) # contains indices (1, 3) result2 = slice(1, 5, 2) print(slice(1, 5, 2))

Ieșire

 felie (None, 3, None) felie (1, 5, 2) 

Aici, result1și result2sunt obiecte felie.

Acum știm despre obiecte felii, să vedem cum putem obține sub șir, sub-listă, sub-tuplu etc. din obiecte felie.

Exemplul 2: Obțineți sub șir folosind obiectul slice

 # Program to get a substring from the given string py_string = 'Python' # stop = 3 # contains 0, 1 and 2 indices slice_object = slice(3) print(py_string(slice_object)) # Pyt # start = 1, stop = 6, step = 2 # contains 1, 3 and 5 indices slice_object = slice(1, 6, 2) print(py_string(slice_object)) # yhn

Ieșire

 Pyt yhn 

Exemplul 3: obțineți șiruri de caractere folosind index negativ

 py_string = 'Python' # start = -1, stop = -4, step = -1 # contains indices -1, -2 and -3 slice_object = slice(-1, -4, -1) print(py_string(slice_object)) # noh

Ieșire

 nu 

Exemplul 4: obțineți sublist și sub-tuplu

 py_list = ('P', 'y', 't', 'h', 'o', 'n') py_tuple = ('P', 'y', 't', 'h', 'o', 'n') # contains indices 0, 1 and 2 slice_object = slice(3) print(py_list(slice_object)) # ('P', 'y', 't') # contains indices 1 and 3 slice_object = slice(1, 5, 2) print(py_tuple(slice_object)) # ('y', 'h') 

Ieșire

 ('P', 'y', 't') ('y', 'h') 

Exemplul 5: obțineți sublist și sub-tuplu folosind index negativ

 py_list = ('P', 'y', 't', 'h', 'o', 'n') py_tuple = ('P', 'y', 't', 'h', 'o', 'n') # contains indices -1, -2 and -3 slice_object = slice(-1, -4, -1) print(py_list(slice_object)) # ('n', 'o', 'h') # contains indices -1 and -3 slice_object = slice(-1, -5, -2) print(py_tuple(slice_object)) # ('n', 'h')

Ieșire

 ('n', 'o', 'h') ('n', 'h') 

Exemplul 6: Utilizarea sintaxei de indexare pentru tranșare

Obiectul slice poate fi înlocuit cu sintaxa de indexare în Python.

Puteți utiliza alternativ următoarea sintaxă pentru tranșare:

 obj (start: stop: step)

De exemplu,

 py_string = 'Python' # contains indices 0, 1 and 2 print(py_string(0:3)) # Pyt # contains indices 1 and 3 print(py_string(1:5:2)) # yh

Ieșire

 Pyt yh 

Articole interesante...