Pythoni viil ()

Funktsioon slice () tagastab viiluobjekti, mida saab kasutada stringide, loendite, dupleksi jms viilutamiseks.

Lõiguobjekti kasutatakse antud järjestuse (string, baidid, tupel, loetelu või vahemik) või mis tahes jada protokolli toetavate objektide (tööriistad __getitem__()ja __len__()meetod) viilutamiseks.

Süntaks slice()on:

 viil (algus, peatus, samm)

slice () parameetrid

slice() võib võtta kolm parameetrit:

  • start (valikuline) - täisarv, kust algab objekti viilutamine. Vaikimisi Nonekui pole.
  • stop - täisarv, kuni viilutamine toimub. Lõikamine peatub indeks- stopp -1 juures (viimane element) .
  • samm (valikuline) - täisarv, mis määrab juurdekasvu iga indeksi vahel. Vaikimisi on see Noneette nähtud.

Näide 1: viiluobjekti loomine viilutamiseks

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

Väljund

 viil (puudub, 3, ükski) viil (1, 5, 2) 

Siin result1ja result2on viiluobjektid.

Nüüd teame viiluobjektide kohta, vaatame, kuidas saaksime viiluobjektidest alamstringi, alamloendi, alamjaotise jne.

Näide 2: hankige alamstring viiluobjekti abil

 # 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

Väljund

 Pyt yhn 

Näide 3: hankige alamstring negatiivse indeksi abil

 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

Väljund

 noh 

Näide 4: hankige alamloend ja alamkanal

 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') 

Väljund

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

Näide 5: Negatiivse indeksi abil saate alamloendi ja alamgrupi

 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')

Väljund

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

Näide 6: Indekseerimissüntaksi kasutamine viilutamiseks

Lõiguobjekti saab asendada Pythonis indekseeriva süntaksiga.

Viilutamiseks võite vaheldumisi kasutada järgmist süntaksit:

 obj (algus: peatus: samm)

Näiteks,

 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

Väljund

 Püüa jaa 

Huvitavad Artiklid...