Tranche Python ()

La fonction slice () renvoie un objet slice qui peut être utilisé pour découper des chaînes, des listes, des tuple, etc.

L'objet slice est utilisé pour découper une séquence donnée (chaîne, octets, tuple, liste ou plage) ou tout objet prenant en charge le protocole de séquence (implémentation __getitem__()et __len__()méthode).

La syntaxe de slice()est:

 tranche (démarrage, arrêt, étape)

Paramètres slice ()

slice() peut prendre trois paramètres:

  • start (facultatif) - Entier de départ où le découpage de l'objet commence. Par défaut, Nonesi non fourni.
  • stop - Entier jusqu'à ce que le tranchage ait lieu. Le découpage s'arrête à l'index stop -1 (dernier élément) .
  • step (facultatif) - Valeur entière qui détermine l'incrément entre chaque index pour le découpage. Par défaut, Nones'il n'est pas fourni.

Exemple 1: créer un objet de tranche pour le découpage

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

Production

 tranche (Aucun, 3, Aucun) tranche (1, 5, 2) 

Ici, result1et result2sont des objets de tranche.

Maintenant que nous connaissons les objets de tranche, voyons comment nous pouvons obtenir une sous-chaîne, une sous-liste, un sous-tuple, etc. à partir d'objets de tranche.

Exemple 2: obtenir une sous-chaîne à l'aide d'un objet 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

Production

 Pyt yhn 

Exemple 3: obtenir une sous-chaîne à l'aide d'un index négatif

 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

Production

 non 

Exemple 4: obtenir une sous-liste et un sous-tuple

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

Production

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

Exemple 5: obtenir une sous-liste et un sous-tuple à l'aide d'un index négatif

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

Production

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

Exemple 6: Utilisation de la syntaxe d'indexation pour le découpage

L'objet slice peut être remplacé par la syntaxe d'indexation en Python.

Vous pouvez également utiliser la syntaxe suivante pour le découpage:

 obj (start: stop: step)

Par exemple,

 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

Production

 Pyt yh 

Articles intéressants...