Python szelet ()

A slice () függvény egy olyan szeletobjektumot ad vissza, amelyet sztringek, listák, duplák stb.

A szeletobjektum egy adott szekvencia (karakterlánc, bájt, duplán, lista vagy tartomány) vagy bármely olyan objektum szeletelésére szolgál, amely támogatja a szekvencia protokollt (megvalósítások __getitem__()és __len__()módszer).

A szintaxisa slice():

 szelet (indítás, leállítás, lépés)

szelet () Paraméterek

slice() három paramétert vehet fel:

  • start (opcionális) - Kezdő egész szám, ahol az objektum szeletelése megkezdődik. Alapértelmezés szerint, Noneha nincs megadva.
  • stop - Egész szám, ameddig a szeletelés megtörténik. A szeletelés a -1 index- stopnál (utolsó elem) áll meg .
  • lépés (választható) - Egész szám, amely meghatározza az egyes indexek közötti szelvényezés növekményét. Alapértelmezés szerint, Noneha nincs megadva.

1. példa: Hozzon létre szeletobjektumot szeleteléshez

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

Kimenet

 szelet (nincs, 3, nincs) szelet (1, 5, 2) 

Itt result1és result2a szelet tárgyakat.

Most már tudunk a szeletobjektumokról, nézzük meg, hogyan kaphatunk szeletobjektumokból sztringeket, allistákat, alcsoportokat stb.

2. példa: Szerezzen alszöveget szelet objektummal

 # 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

Kimenet

 Pyt yhn 

3. példa: Szerezzen alszöveget negatív index segítségével

 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

Kimenet

 nincs h 

4. példa: Allisták és al-duplák beszerzése

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

Kimenet

 („P”, „y”, „t”) („y”, „h”) 

5. példa: A negatív index használatával szerezzen be egy allistát és egy alcsoportot

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

Kimenet

 („n”, „o”, „h”) („n”, „h”) 

6. példa: Indexelési szintaxis használata szeleteléshez

A szelet objektum helyettesíthető a Python indexelési szintaxisával.

A szeleteléshez felváltva használhatja a következő szintaxist:

 obj (start: stop: lépés)

Például,

 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

Kimenet

 Pyt yh 

érdekes cikkek...