Menu
CoddyTech

Slicing delle liste - Parte 2

Fa parte della sezione Fondamenti del percorso Python di Coddy. Lezione 65 di 77.

Lo slicing ha un altro parametro, step: lst[start:stop:step]. Per esempio, considera questa lista:

numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Ottiene un elemento ogni due dall’indice 1 all’indice 8:

print(numbers[1:8:2])
# Output: [1, 3, 5, 7]

Ottiene un elemento ogni tre a partire dall’indice 2:

print(numbers[2::3])
# Output: [2, 5, 8]

Anche lo slicing supporta gli indici negativi.

Conteggio dalla fine:

print(numbers[-3:])
# Risultato: [7, 8, 9]

Qui, -3 significa "parti 3 posizioni dalla fine"

Conta fino alla fine:

print(numbers[:-2])    
# Output: [0, 1, 2, 3, 4, 5, 6, 7]

Qui, -2 significa «fermati 2 posizioni prima della fine» (escluso)

Inversione con passo negativo:

print(numbers[::-1])
# Risultato: [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
  • Lo spazio vuoto prima del primo : significa «inizia dall'inizio» (o «inizia dalla fine» quando il passo è negativo)
  • Lo spazio vuoto tra : significa «vai fino alla fine» (o «vai fino all'inizio» quando il passo è negativo)
  • -1 significa «spostati indietro di un passo alla volta» 
challenge icon

Sfida

Facile

Crea un programma che riceva una lista come input (fornita) e stampi tre nuove liste in base alle seguenti operazioni di slicing:

  • Una lista contenente un elemento ogni tre, a partire dall'indice 1 (il secondo elemento)
  • Una lista contenente tutti gli elementi dal 6º elemento al 1º in ordine inverso
  • Una lista contenente un elemento ogni due, a partire dal centro della lista fino alla fine

Provalo tu

lst = input().split(",")
# Scrivi il tuo codice qui sotto
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore Python online