Python dilimi ()

Slice () işlevi, dizeleri, listeleri, tuple vs. dilimlemek için kullanılabilen bir dilim nesnesi döndürür.

Dilim nesnesi, belirli bir diziyi (dize, bayt, tuple, liste veya aralık) veya dizi protokolünü (uygulamalar __getitem__()ve __len__()yöntem) destekleyen herhangi bir nesneyi dilimlemek için kullanılır .

Sözdizimi slice()şöyledir:

 dilim (başlat, durdur, adım)

dilim () Parametreler

slice() üç parametre alabilir:

  • start (isteğe bağlı) - Nesnenin dilimlenmesinin başladığı yerde başlayan tam sayı. Sağlanmazsa varsayılan olarak Noneayarlanır.
  • stop - Dilimlemenin gerçekleşeceği tam sayı. Dilimleme, -1 dizin durağında (son eleman) durur .
  • step (isteğe bağlı) - Dilimleme için her dizin arasındaki artışı belirleyen tamsayı değeri. Sağlanmadıysa varsayılanlar None.

Örnek 1: Dilimleme için bir dilim nesnesi oluşturma

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

Çıktı

 dilim (Yok, 3, Yok) dilim (1, 5, 2) 

Burada result1ve result2dilim nesneleridir.

Artık dilim nesnelerini biliyoruz, şimdi dilim nesnelerinden alt dizeyi, alt listeyi, alt demeti vb. Nasıl elde edebileceğimizi görelim.

Örnek 2: Dilim nesnesini kullanarak alt dizeyi alın

 # 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

Çıktı

 Pyt yhn 

Örnek 3: Negatif dizin kullanarak alt dizeyi alın

 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

Çıktı

 hayır 

Örnek 4: Alt listeyi ve alt listeyi alın

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

Çıktı

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

Örnek 5: Negatif dizini kullanarak alt listeyi ve alt diziyi alın

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

Çıktı

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

Örnek 6: Dilimleme için Dizin Oluşturma Sözdizimini Kullanma

Dilim nesnesi, Python'daki dizinleme sözdizimi ile değiştirilebilir.

Alternatif olarak dilimleme için aşağıdaki sözdizimini kullanabilirsiniz:

 obj (başlangıç: durdurma: adım)

Örneğin,

 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

Çıktı

 Pyt yh 

Ilginç makaleler...