GNU/Linux >> Linux Esercitazione >  >> Linux

Come usare i set in Python

Impara a utilizzare i set in Python come punto di ingresso per gli studenti Python e i programmatori Python per apprendere e/o programmare concetti più avanzati come funzioni Lambda, Map Reduce, API di raccolte Java e interfaccia di raccolte Python.

Questo tutorial esaminerà diversi casi d'uso quotidiani della struttura dei dati impostata nel linguaggio di programmazione Python con esempi per aiutarti a comprendere meglio i concetti.

Continua a leggere per iniziare!

Prerequisiti

Questo tutorial sarà una dimostrazione pratica. Se desideri continuare, assicurati di avere quanto segue:

  • Ambiente Python v3 o successivo installato.
  • Un editor di codice per eseguire codice Python come VS Code.

Creare i tuoi primi set in Python

In Python, due strutture dati sono liste, che sono raccolte ordinate di dati mutabili, e dizionari che memorizzano i dati in coppie chiave-valore. Mutevole significa che i dati possono essere modificati dopo la loro creazione. Imposta le caratteristiche di condivisione di elenchi e dizionari. Come le liste, gli insiemi sono raccolte mutevoli di singoli elementi.

A differenza degli elenchi, i set non hanno un indice perché non sono una sequenza, rendendo i set più simili ai dizionari, che sono anche raccolte non ordinate. Python ottimizza altamente sia gli insiemi che i dizionari per le operazioni di ricerca, aumentando la velocità.

Puoi cercare una chiave per ottenere un valore in un dizionario, ad esempio trovare il nome di qualcuno e poi ottenere il suo numero di telefono quando guardi in una rubrica. Ma i set non contengono coppie chiave-valore. Invece, cerchi un elemento all'interno degli insiemi per verificare se esiste o meno nell'insieme. Questo concetto è chiamato test di appartenenza.

Per imparare, è tempo di creare un set! Si crea un set aggiungendo elementi a un set. Sporciamoci le mani!

1. Avvia una sessione Python interattiva nel terminale.

2. Una volta che la tua sessione Python è pronta, crea un set chiamando il set() metodo e passare qualsiasi tipo di dati che si desidera aggiungere. Copia e incolla il codice qui sotto nella tua sessione Python e premi Invio per creare il tuo primo set. Stai dichiarando il my_firs_set variabile, con il letterale impostato:parentesi graffe. Il ATA, Hello World string è il primo e unico elemento.

my_first_set = {'ATA, Hello World'}

3. Esegui il comando seguente per chiamare il tuo primo set per verificare che crei il set.

my_first_set

Otterrai la stringa, ATA, Hello World in cambio, come mostrato di seguito.

4. Puoi ricontrollare quel my_first_set è un set usando il type() funzione per ottenere il tipo di dati del my_first_set . Esegui il codice seguente per ottenere il tipo di dati.

type(my_first_set)

Otterrai l'output mostrato di seguito. L'output conferma my_first_set è un insieme.

5. Poiché un set è una raccolta, ha la funzione di lunghezza incorporata:len() . Esegui il codice seguente per ottenere la lunghezza del set.

len(my_first_set)

In cambio, riceverai 1, come mostrato di seguito, perché il set contiene un solo elemento. Un insieme contenente esattamente un elemento è anche noto come insieme singleton.

Capire gli insiemi che definiscono le proprietà

Un insieme ha due proprietà di definizione, che vedrai entrambe in seguito. A nessuno piacciono gli spoiler, continua a leggere per iniziare a programmare e conoscere queste proprietà.

Crea un nuovo file chiamato set_comparison.py e copia e incolla il codice sottostante.

# You will make a couple of sets. The first set is {1, 2, 3}, 
# the second set has the same numbers in a different order {3, 2, 1}.
# You'll use a double equal sign == to compare the sets. # And you'll use a print statement to print out the result of this comparison.
print({1, 2, 3} == {3, 2, 1})

Esegui il comando seguente nel tuo IDE per eseguire set_comparison.py script e stampa l'output di confronto.

python set_comparison.py

Diventerai vero come output come mostrato di seguito:Python ha valutato questi due insiemi e li ha considerati entrambi uguali. Sono della stessa lunghezza e contengono esattamente gli stessi elementi l'uno dell'altro.

Quando un elemento è in un set, è garantito che sia unico rispetto agli altri elementi. In parole povere, un insieme è un oggetto matematico che tiene traccia di tutti i valori distinti in una data raccolta o stringa.

1️⃣ Gli insiemi Python non sono sequenze:l'ordine degli elementi nell'insieme non ha importanza. I set non sono ordinati.

Successivamente imparerai come gli insiemi gestiscono i valori duplicati. Crea un nuovo file chiamato set_integer_number.py , copia e incolla la riga sottostante. Ciascun membro di questo set letterale sarà un numero intero, separato da virgole, e alcuni di questi numeri interi si ripeteranno in nessun ordine particolare.


print({1, 2, 3, 2, 3, 4, 3, 4, 4, 4})

Esegui il comando seguente per stampare i membri del set.

python set_integer_number.py

Otterrai l'output come quello qui sotto, dove puoi vedere quel set_integer_number contiene solo i valori univoci 1 , 2 , 3 e 4 . Anche se li hai ripetuti quasi tutti. Quando Python valuta, costruisce e stampa l'insieme effettivo, hai solo quattro membri nell'insieme.

Quando un elemento è in un set, è garantito che sia unico rispetto agli altri elementi. In parole povere, un insieme è un oggetto matematico che tiene traccia di tutti i valori distinti in una data raccolta o stringa.

2️⃣ I set Python non contengono dati duplicati:non ci sono valori duplicati. I membri sono unicamente diversi l'uno dall'altro.

Puoi ricontrollare se sono stati memorizzati valori duplicati stampando la lunghezza di questo set utilizzando il len() metodo. Rimuovi il contenuto precedente da set_integer_number.py file e copia e incolla la riga sottostante nel set_integer_number.py file.

print(len({1, 2, 3, 2, 3, 4, 3, 4, 4, 4}))

Esegui il comando seguente per stampare la lunghezza del set.

python set_integer_number.py

Riceverai il numero 4 nell'output come mostrato di seguito, il che significa che ci sono solo quattro membri nel set.

Confronta queste proprietà con un esempio reale di un set. Un insieme di frutti:mele, banane, arance, limoni e lime. L'ordine dei frutti non ha importanza. Se modifichi l'ordine dell'elenco, nulla sarà diverso. Hai sempre lo stesso elenco di frutti. Le mele non sono più importanti delle banane o dei limoni.

Tutti i frutti sono unici e sono nettamente diversi l'uno dall'altro. Se qualcuno ti chiede di nominare cinque frutti, non diresti banane cinque volte:una volta è sufficiente. Poiché le banane sono già nel set, aggiungerle di nuovo non dovrebbe cambiare il set.

Aggiunta di elementi a un set Python

Nella sezione precedente, hai imparato come creare un nuovo set Python. In questa sezione imparerai come manipolare i set Python. Il primo è aggiungere elementi a un set.

I set Python sono mutabili, il che significa che i dati all'interno di un set possono essere modificati dopo la creazione del set.

Esistono due metodi per aggiungere elementi a un set. Il add() il metodo aggiunge un elemento, mentre il update() il metodo aggiunge più di un elemento.

Crea un nuovo file chiamato set_vowels.py , copia e incolla il codice sottostante nel file.

# You'll declare a new variable vowels and assign it as an empty set.
vowels = set()
#Use the add() method to add one element to the set. 
# Let's add A, which was the first vowel.
vowels.add('A')
#Print the new set with the added element.
print(vowels)

Esegui il codice seguente per verificare che stai aggiungendo elementi al set.

python set_vowels.py

Otterrai un output come quello qui sotto. Nota che stampa "A ' quando stampi set_vowels contenuto, ovvero "A" è un membro di set_vowels .

Ora, invece di aggiungere il resto delle vocali una per una, è il momento di sommarle tutte insieme con il metodo di aggiornamento.

Copia e incolla la riga sottostante nel tuo set_vowels.py file. Utilizzerai un tipo iterabile, che è una stringa:U , E , O e io . Il metodo di aggiornamento esaminerà ogni elemento uno per uno, rendendo la stringa iterabile e aggiungerà ogni elemento al set.

vowels.update('U, E, O, I')

Esegui il codice seguente per verificare che il set contenga tutte e quattro le vocali appena aggiunte.

python set_vowels.py

Otterrai l'output mostrato di seguito. Puoi vedere che aggiunge tutte le vocali al set.

L'ordine non è deterministico per questi tipi di dati stringa. Quindi se le tue vocali escono in un ordine diverso, va bene; funziona come previsto.

Rimozione di elementi da un set Python

Nella sezione precedente, hai imparato come aggiungere elementi a un set. In questa sezione imparerai come rimuovere elementi da un set.

Esistono quattro metodi per rimuovere un elemento da un set Python:

  • clear()
  • remove()
  • discard()
  • pop()

Esaminiamo ogni metodo uno per uno. Gli esempi si baseranno sulle vocali impostate nella sezione precedente. Creerai una copia al posto del set originale per non influire sul set originale.

Il copy() metodo fa una copia del set. Ad esempio, copia e incolla le righe seguenti nel tuo set_vowels.py file per fare una copia per ogni metodo di rimozione.

clear_method = vowels.copy()
remove_method = vowels.copy()
discard_method = vowels.copy()
clear_method = vowels.copy()

Imparare il metodo Clear

Il primo metodo è il clear() metodo, la cui sintassi è set.clear() . Questo metodo non accetta alcun argomento.

Copia e incolla le righe sottostanti nel tuo set_vowels.py per chiamare il clear() metodo e stampare il clear_method impostare

clear_method.clear()
print(clear_method)

Esegui il codice qui sotto e otterrai un set vuoto stampato come mostrato di seguito. Il clear() metodo ha rimosso tutti gli elementi dal set.

python set_vowels.py

Utilizzo del metodo di rimozione

Ora, sul remove() metodo. Questo metodo accetta un argomento, che è l'elemento che vuoi rimuovere dal set. La sintassi per remove() il metodo è set.remove(element) . Utilizzerai questo metodo nel tuo codice qui sotto.

remove_method = vowels.copy()
# Rmove the letter A.
remove_method.remove('A')
print(remove_method)

Esegui il codice qui sotto per verificare che la rimozione della lettera A dal remove_method impostato.

python set_vowels.py

Otterrai un output come mostrato di seguito. Puoi vedere che A non fa più parte dell'insieme.

Se provi a rimuovere un elemento che non esiste nel set, riceverai un errore chiave. Invochiamo il remove() metodo con un elemento che non è un membro dell'insieme, la lettera B.

remove_method = vowels.copy()
remove_method.remove('B')
print(remove_method)

Riesegui set_vowels.py, e otterrai un output che mostra un errore, come quello qui sotto.

Rimozione di elementi con il metodo di scarto

Il terzo metodo è il discard() metodo. Questo metodo accetta un argomento, che è l'elemento che vuoi rimuovere da un set.

La differenza tra remove() e discard() è che se un elemento non esiste, il metodo require() non genererà un errore. Questo metodo evita di generare un KeyError e puoi chiamare il discard() tutte le volte che vuoi.

La sintassi del discard() il metodo è set.discard(element) . Ancora una volta, copia e incolla il codice qui sotto. Scarterai la B letter, che non è un membro del set, e questa volta Python non genererà un errore.

discard_method = vowels.copy()
discard_method.discard('B')
print(discard_method)

Esegui set_vowels.py di nuovo e guarda cosa succede.

python set_vowels.py

Otterrai un output come quello mostrato di seguito. Puoi vedere che non ci sono errori.

Eliminazione degli elementi con il metodo Pop

L'ultimo metodo è il pop() metodo. Questo metodo non accetta argomenti, rimuove un elemento casuale dall'insieme e restituisce l'elemento rimosso. La sintassi per il metodo pop() è set.pop() .

Copia e incolla il codice qui sotto per invocare il pop() metodo e stampare l'elemento rimosso.

pop_method = vowels.copy()
vowel = pop_method.pop()
print(vowel)
print(pop_method)

Esegui set_vowels.py, e otterrai un output come quello mostrato di seguito. Il set di vocali originale contiene cinque vocali. Il tuo pop_method set ha quattro vocali:il metodo rimuove e restituisce la vocale O .

Dal pop() rimuove un elemento casuale, potresti aver ottenuto un risultato diverso. Esegui il codice più volte e noterai la casualità in gioco.

Conclusione

Ora dovresti avere una migliore comprensione degli insiemi Python e della metodologia necessaria per creare, rimuovere o aggiungere elementi agli insiemi. Come passaggio successivo, perché non esplorare le operazioni sugli insiemi e gli insiemi rispetto agli elenchi?


Linux
  1. Come usare BusyBox su Linux

  2. Come installare Python su Linux

  3. Come uso cron in Linux

  4. Come utilizzare Ansible per impostare il monitoraggio del sistema con Prometheus

  5. Come utilizzare Python per eseguire query su WMI (Linux – Windows)

Come aggiornare Python a 3.9

Come installare Python 3 su Windows 10

Comando Linux set e come usarlo {9 esempi}

Come configurare un ambiente virtuale Python su Debian 10 Buster

Come controllare la versione di Python

Come installare e utilizzare Python-Mistune su Linux