Python è il linguaggio più utilizzato nelle migliori aziende come Intel, IBM, NASA, Pixar, Netflix, Facebook, JP Morgan Chase, Spotify e molte altre grazie alle sue prestazioni e alle sue potenti librerie. Per entrare in queste aziende e organizzazioni come sviluppatore Python, devi padroneggiare alcuni importanti Domande per l'intervista su Python per completare il loro round di valutazione online Python e il round di interviste Python. Abbiamo preparato un elenco dei Le 50 migliori domande per l'intervista su Python insieme alle loro risposte ad ace nelle interviste.
Domande per l'intervista su Python
Tabella dei contenuti
- Domande di base per l'intervista su Python per le matricole
- 1. Cos'è Python? Elenca alcune applicazioni popolari di Python nel mondo della tecnologia.
- 2. Quali sono i vantaggi dell'utilizzo del linguaggio Python come strumento nello scenario attuale?
- 3. Python è un linguaggio compilato o interpretato?
- 4. Cosa fa il simbolo '#' in Python?
- 6. Come vengono passati gli argomenti per valore o per riferimento in Python?
- 7. Qual è la differenza tra un set e un dizionario?
- 8. Cos'è la comprensione delle liste? Dare un esempio.
- 9. Cos'è una funzione lambda?
- 10. Cos'è un passaggio in Python?
- 11. Qual è la differenza tra / e // in Python?
- 12. Come viene eseguita la gestione eccezionale in Python?
- 13. Cos'è la funzione swapcase in Python?
- 14. Differenza tra ciclo for e ciclo while in Python
- 15. Possiamo passare una funzione come argomento in Python?
- 16. Cosa sono *args e *kwargs?
- 17. Il rientro è richiesto in Python?
- 18. Cos'è Scope in Python?
- 19. Cos'è la docstring in Python?
- 20. Cos'è un linguaggio tipizzato dinamicamente?
- 21. Cos'è un'interruzione, una continuazione e un passaggio in Python?
- 23. Come si calcola un numero in Python?
- Domande intermedie per l'intervista su Python
- 24. Qual è la differenza tra le funzioni xrange e range?
- 25. Cos'è la comprensione del dizionario? Dare un esempio
- 26. È comprensione della tupla? Se sì, come e se no perché?
- 27. Distinguere tra Lista e Tupla?
- 28. Qual è la differenza tra una copia superficiale e una copia profonda?
- 29. Quale tecnica di ordinamento viene utilizzata dalle funzioni sort() e sorted() di Python?
- 30. Cosa sono i Decoratori?
- 31. Come si esegue il debug di un programma Python?
- 32. Cosa sono gli iteratori in Python?
- 33. Cosa sono i generatori in Python?
- 34. Python supporta l'ereditarietà multipla?
- 35. Cos'è il polimorfismo in Python?
- 36. Definire l'incapsulamento in Python?
- 38. Come viene eseguita la gestione della memoria in Python?
- 39. Come eliminare un file usando Python?
- 40. Cos'è l'affettatura in Python?
- 41. Cos'è uno spazio dei nomi in Python?
- Domande e risposte per interviste avanzate su Python
- 42. Cos'è il PIP?
- 43. Cos'è la funzione zip?
- 44. Cosa sono il decapaggio e il decapaggio?
- 45. Cos'è il Monkey Patching in Python?
- 46. Cos'è __init__() in Python?
- 47. Scrivi un codice per visualizzare l'ora corrente?
- 48. Cosa sono gli specificatori di accesso in Python?
- 49. Cosa sono gli unit test in Python?
- 50. Blocco globale dell'interprete Python (GIL)?
- 51. Cosa sono le annotazioni delle funzioni in Python?
- 52. Cosa sono i gruppi di eccezioni in Python?
- 53. Cos'è l'istruzione Switch di Python
- 54. Cos'è l'Operatore Walrus?
Domande di base per l'intervista su Python per le matricole
1. Cos'è Python? Elenca alcune applicazioni popolari di Python nel mondo della tecnologia.
Python è un linguaggio di programmazione di alto livello e di uso generale ampiamente utilizzato. È stato creato da Guido van Rossum nel 1991 e ulteriormente sviluppato dalla Python Software Foundation. È stato progettato ponendo l'accento sulla leggibilità del codice e la sua sintassi consente ai programmatori di esprimere i propri concetti in meno righe di codice.
È usato per:
- Script di sistema
- Sviluppo web
- Sviluppo del gioco
- Sviluppo software
- Matematica complessa
2. Quali sono i vantaggi dell'utilizzo del linguaggio Python come strumento nello scenario attuale?
Di seguito sono riportati i vantaggi derivanti dall'utilizzo del linguaggio Python:
- Linguaggio orientato agli oggetti
- Linguaggio di alto livello
- Linguaggio tipizzato dinamicamente
- Ampio supporto alle librerie
- Presenza di moduli di terze parti
- Open source e sviluppo comunitario
- Portatile e interattivo
- Portabile su tutti i sistemi operativi
3. Python è un linguaggio compilato o interpretato?
In realtà, Python è un linguaggio parzialmente compilato e parzialmente interpretato. La parte di compilazione viene eseguita per prima quando eseguiamo il nostro codice e questo genererà internamente il codice byte, questo codice byte verrà convertito dalla macchina virtuale Python (p.v.m) in base alla piattaforma sottostante (macchina+sistema operativo).
4. Cosa fa il simbolo '#' in Python?
'#' viene utilizzato per commentare tutto ciò che segue sulla riga.
mysql non è uguale
6. Come vengono passati gli argomenti per valore o per riferimento in Python?
Tutto in Python è un oggetto e tutte le variabili contengono riferimenti agli oggetti. I valori di riferimento dipendono dalle funzioni; di conseguenza, non è possibile modificare il valore dei riferimenti. Tuttavia, puoi modificare gli oggetti se sono mutabili.
7. Qual è la differenza tra un set e un dizionario?
Il set è una raccolta non ordinata di tipi di dati che è iterabile, mutabile e non presenta elementi duplicati.
Un dizionario in Python è una raccolta ordinata di valori di dati, utilizzata per archiviare valori di dati come una mappa.
8. Cos'è la comprensione delle liste? Dare un esempio.
La comprensione delle liste è una costruzione della sintassi per facilitare la creazione di una lista basata su iterabili esistenti.
Per esempio:
my_list = [i for i in range(1, 10)]>
9. Cos'è una funzione lambda?
Una funzione lambda è una funzione anonima. Questa funzione può avere un numero qualsiasi di parametri ma può avere solo un'istruzione. Per esempio:
a = lambda x, y : x*y print(a(7, 19))>
10. Cos'è un passaggio in Python?
Passare significa non eseguire alcuna operazione o, in altre parole, è un segnaposto nell'istruzione composta, dove dovrebbe esserci uno spazio vuoto e non deve essere scritto nulla.
11. Qual è la differenza tra / e // in Python?
/ rappresenta la divisione precisa (il risultato è un numero in virgola mobile) mentre // rappresenta la divisione minima (il risultato è un numero intero). Per esempio:
5//2 = 2 5/2 = 2.5>
12. Come viene eseguita la gestione eccezionale in Python?
Esistono 3 parole chiave principali, ovvero try, tranne e infine, che vengono utilizzate per rilevare le eccezioni e gestire di conseguenza il meccanismo di ripristino. Try è il blocco di un codice di cui viene monitorata la presenza di errori. Tranne che il blocco viene eseguito quando si verifica un errore.
La bellezza del blocco finale è eseguire il codice dopo aver tentato un errore. Questo blocco viene eseguito indipendentemente dal fatto che si sia verificato o meno un errore. Infine, block viene utilizzato per eseguire le attività di pulizia richieste di oggetti/variabili.
13. Cos'è la funzione swapcase in Python?
È una funzione di stringa che converte tutti i caratteri maiuscoli in minuscoli e viceversa. Viene utilizzato per modificare il caso esistente della stringa. Questo metodo crea una copia della stringa che contiene tutti i caratteri nel caso di scambio. Per esempio:
string = 'techcodeview.com' string.swapcase() --->'gEEKSFORgEEKS'>
14. Differenza tra ciclo for e ciclo while in Python
Il ciclo for viene generalmente utilizzato per scorrere gli elementi di vari tipi di raccolte come Elenco , Tupla , Impostato , E Dizionario . Gli sviluppatori utilizzano un ciclo for in cui hanno sia le condizioni di inizio che di fine. Mentre il ciclo while è l'effettiva funzionalità di loop utilizzata in qualsiasi altro linguaggio di programmazione. I programmatori usano un ciclo while Python in cui hanno solo le condizioni finali.
15. Possiamo passare una funzione come argomento in Python?
Sì, è possibile passare diversi argomenti a una funzione, inclusi oggetti, variabili (dello stesso tipo di dati o distinti) e funzioni. Le funzioni possono essere passate come parametri ad altre funzioni perché sono oggetti. Le funzioni di ordine superiore sono funzioni che possono accettare altre funzioni come argomenti.
Per saperne di più fare riferimento all'articolo: Passaggio di funzioni come argomento in Python
16. Cosa sono *args e *kwargs?
Per passare un numero variabile di argomenti a una funzione in Python, utilizzare la sintassi speciale *args e **kwargs nella specifica della funzione. Viene utilizzato per passare un elenco di argomenti di lunghezza variabile e senza parole chiave. Utilizzando *, la variabile che associamo a * diventa iterabile, consentendoti di eseguire operazioni su di essa come iterare su di essa e utilizzare operazioni di ordine superiore come mappa e filtro.
17. Il rientro è richiesto in Python?
SÌ, rientranza è richiesto in Python. UN Pitone L'interprete può essere informato che un gruppo di istruzioni appartiene a uno specifico blocco di codice utilizzando il rientro Python. I rientri rendono il codice facile da leggere per gli sviluppatori in tutti i linguaggi di programmazione, ma in Python è molto importante rientrare il codice in un ordine specifico.
18. Cos'è Scope in Python?
La posizione in cui possiamo trovare una variabile e anche accedervi se necessario è chiamata ambito di una variabile.
- Variabile locale Python: Le variabili locali sono quelle inizializzate all'interno di una funzione e sono univoche per quella funzione. Non è possibile accedervi al di fuori della funzione.
- Variabili globali Python: Le variabili globali sono quelle definite e dichiarate all'esterno di qualsiasi funzione e non sono specificate in nessuna funzione.
- Ambito a livello di modulo: Si riferisce agli oggetti globali del modulo corrente accessibile nel programma.
- Ambito più esterno: Si riferisce a qualsiasi nome integrato che il programma può chiamare. Il nome a cui si fa riferimento si trova per ultimo tra gli oggetti in questo ambito.
19. Cos'è la docstring in Python?
Le stringhe di documentazione Python (o docstring) forniscono un modo conveniente per associare la documentazione a moduli, funzioni, classi e metodi Python.
- Dichiarazione di Docstring: Le docstring vengono dichiarate utilizzando 'triple virgolette singole' o triple virgolette doppie appena sotto la dichiarazione di classe, metodo o funzione. Tutte le funzioni dovrebbero avere una docstring.
- Accesso alle Docstring: È possibile accedere alle docstring utilizzando il metodo __doc__ dell'oggetto o utilizzando la funzione di aiuto.
20. Cos'è un linguaggio tipizzato dinamicamente?
Lingue digitate sono i linguaggi in cui definiamo il tipo di dato e sarà conosciuto dalla macchina in fase di compilazione o in fase di runtime. Le lingue digitate possono essere classificate in due categorie:
- Linguaggi tipizzati staticamente: In questo tipo di linguaggio, il tipo di dati di una variabile è noto al momento della compilazione, il che significa che il programmatore deve specificare il tipo di dati di una variabile al momento della sua dichiarazione.
- Lingue tipizzate dinamicamente: Sono i linguaggi che non richiedono alcun tipo di dato predefinito per nessuna variabile poiché viene interpretata in fase di esecuzione dalla macchina stessa. In questi linguaggi, gli interpreti assegnano il tipo di dati a una variabile in fase di esecuzione in base al suo valore.
21. Cos'è un'interruzione, una continuazione e un passaggio in Python?
IL interrompere l'istruzione viene utilizzato per terminare il ciclo o l'istruzione in cui è presente. Successivamente il controllo passerà alle istruzioni presenti dopo l'istruzione break, se disponibili.
Continua è anche un'istruzione di controllo del ciclo, proprio come l'istruzione break. L'istruzione continue è opposta a quella dell'istruzione break, invece di terminare il ciclo, forza l'esecuzione della successiva iterazione del ciclo.
Passaggio significa non eseguire alcuna operazione o in altre parole, è un segnaposto nell'istruzione composta, dove dovrebbe esserci uno spazio vuoto e non deve essere scritto nulla.
Numerico: Il tipo di dati numerico in Python rappresenta i dati che hanno un valore numerico. Un valore numerico può essere un numero intero, un numero mobile, un booleano , o anche un numero complesso.
23. Come si calcola un numero in Python?
Il modulo matematico Python include un metodo che può essere utilizzato per calcolare la base di un numero.
- pavimento() Il metodo in Python restituisce il piano di x, ovvero il numero intero più grande non maggiore di x.
- Inoltre, il metodo ceil(x) in Python restituisce un valore massimo di x, ovvero il più piccolo intero maggiore o uguale a x.
Domande intermedie per l'intervista su Python
24. Qual è la differenza tra le funzioni xrange e range?
range() e xrange() sono due funzioni che potrebbero essere utilizzate per ripetere un certo numero di volte nei cicli for in Python. In Python 3 non esiste xrange, ma la funzione range si comporta come xrange in Python 2.
- allineare() – Restituisce un elenco di numeri creati utilizzando la funzione range().
- xrange() – Questa funzione restituisce l'oggetto generatore che può essere utilizzato per visualizzare i numeri solo tramite loop. L'unico intervallo particolare viene visualizzato su richiesta e quindi richiamato valutazione pigra .
25. Cos'è la comprensione del dizionario? Dare un esempio
La comprensione del dizionario è una costruzione sintattica per facilitare la creazione di un dizionario basato sull'iterabile esistente.
Per esempio: mio_detto = {i:i+7 for i in range(1, 10)}
26. È comprensione della tupla? Se sì, come e se no perché?
(i for i in (1, 2, 3))>
La comprensione della tupla non è possibile in Python perché finirà in un generatore, non in una comprensione della tupla.
27. Distinguere tra Lista e Tupla?
Analizziamo le differenze tra Lista e Tupla:
Elenco
- Gli elenchi sono di tipo dati mutabile.
- Gli elenchi consumano più memoria
- L'elenco è utile per eseguire operazioni come l'inserimento e la cancellazione.
- L'implicazione delle iterazioni richiede molto tempo
Tupla
- Le tuple sono tipi di dati immutabili.
- La tupla consuma meno memoria rispetto all'elenco
- Un tipo di dati Tuple è appropriato per accedere agli elementi
- L'implicazione delle iterazioni è relativamente più veloce
28. Qual è la differenza tra una copia superficiale e una copia profonda?
La copia superficiale viene utilizzata quando viene creato un nuovo tipo di istanza e mantiene i valori copiati, mentre la copia profonda memorizza i valori già copiati.
Una copia superficiale ha un'esecuzione del programma più rapida mentre una copia profonda lo rallenta.
29. Quale tecnica di ordinamento viene utilizzata dalle funzioni sort() e sorted() di Python?
Python usa il Tim Ordina algoritmo per l'ordinamento. È un ordinamento stabile il cui caso peggiore è O(N log N). Si tratta di un algoritmo di ordinamento ibrido, derivato dal merge sort e dall'insertion sort, progettato per funzionare bene su molti tipi di dati del mondo reale.
30. Cosa sono i Decoratori?
I decoratori sono uno strumento molto potente e utile in Python poiché sono la modifica specifica che apportiamo nella sintassi di Python per alterare facilmente le funzioni.
31. Come si esegue il debug di un programma Python?
Usando questo comando possiamo eseguire il debug di un programma Python:
$ python -m pdb python-script.py>
32. Cosa sono gli iteratori in Python?
In Python, gli iteratori vengono utilizzati per ripetere un gruppo di elementi, contenitori come un elenco. Gli iteratori sono raccolte di elementi e possono essere un elenco, tuple o un dizionario. L'iteratore Python implementa __itr__ e il metodo next() per iterare gli elementi memorizzati. Generalmente utilizziamo i cicli per scorrere le raccolte (elenco, tupla) in Python.
33. Cosa sono i generatori in Python?
In Python, il generatore è un modo che specifica come implementare gli iteratori. È una funzione normale tranne per il fatto che produce espressione nella funzione. Non implementa __itr__ e il metodo next() e riduce anche altri costi generali.
Se una funzione contiene almeno un'istruzione yield, diventa un generatore. La parola chiave yield mette in pausa l'esecuzione corrente salvandone gli stati e poi riprende dalla stessa quando richiesto.
34. Python supporta l'ereditarietà multipla?
Python supporta più eredità, a differenza di Java. Ereditarietà multiple significano che una classe può derivare da più di una classe genitore.
35. Cos'è il polimorfismo in Python?
Per polimorfismo si intende la capacità di assumere molteplici forme. Quindi, ad esempio, se la classe genitore ha un metodo chiamato ABC, anche la classe figlia può avere un metodo con lo stesso nome ABC avente i propri parametri e variabili. Python consente il polimorfismo.
36. Definire l'incapsulamento in Python?
Incapsulare significa legare insieme il codice e i dati. Una classe Python è un esempio di incapsulamento.
38. Come viene eseguita la gestione della memoria in Python?
Python utilizza il suo spazio heap privato per gestire la memoria. Fondamentalmente, tutti gli oggetti e le strutture dati sono archiviati nello spazio heap privato. Anche il programmatore non può accedere a questo spazio privato poiché di questo spazio si occupa l'interprete. Python ha anche un garbage collector integrato, che ricicla tutta la memoria inutilizzata, libera la memoria e la rende disponibile nello spazio heap.
39. Come eliminare un file usando Python?
Possiamo eliminare un file usando Python seguendo i seguenti approcci:
- os.remove()
- os.unlink()
40. Cos'è l'affettatura in Python?
Affettatura di pitone è un'operazione sulle stringhe per estrarre una parte della stringa o una parte di un elenco. Con questo operatore è possibile specificare dove iniziare l'affettatura, dove terminare e specificare il passaggio. Il taglio dell'elenco restituisce un nuovo elenco dall'elenco esistente.
Syntax: Lst[ Initial : End : IndexJump ]>
41. Cos'è uno spazio dei nomi in Python?
Uno spazio dei nomi è un sistema di denominazione utilizzato per garantire che i nomi siano univoci ed evitare conflitti di denominazione.
Domande e risposte per interviste avanzate su Python
42. Cos'è il PIP?
PIP è l'acronimo di Python Installer Package che fornisce un'interfaccia semplice per installare vari moduli Python. È uno strumento da riga di comando in grado di cercare pacchetti su Internet e installarli senza alcuna interazione da parte dell'utente.
43. Cos'è la funzione zip?
La funzione Python zip() restituisce un oggetto zip, che mappa un indice simile di più contenitori. Prende un iterabile, lo converte in un iteratore e aggrega gli elementi in base agli iterabili passati. Restituisce un iteratore di tuple.
44. Cosa sono il decapaggio e il decapaggio?
Il modulo Pickle accetta qualsiasi oggetto Python e lo converte in una rappresentazione di stringa e lo scarica in un file utilizzando la funzione dump, questo processo è chiamato pickling. Mentre il processo di recupero degli oggetti Python originali dalla rappresentazione della stringa memorizzata è chiamato deserializzazione.
45. Cos'è il Monkey Patching in Python?
In Python, il termine Monkey Patch si riferisce solo alle modifiche dinamiche di una classe o di un modulo in fase di esecuzione.
# g.py class GeeksClass: def function(self): print 'function()' import m def monkey_function(self): print 'monkey_function()' m.GeeksClass.function = monkey_function obj = m.GeeksClass() obj.function()>
46. Cos'è __init__() in Python?
Equivalente ai costruttori nella terminologia OOP, __init__ è un metodo riservato nelle classi Python. Il metodo __init__ viene chiamato automaticamente ogni volta che viene avviato un nuovo oggetto. Questo metodo alloca memoria al nuovo oggetto non appena viene creato. Questo metodo può essere utilizzato anche per inizializzare le variabili.
47. Scrivi un codice per visualizzare l'ora corrente?
import time currenttime= time.localtime(time.time()) print (Current time is, currenttime)>
48. Cosa sono gli specificatori di accesso in Python?
Python utilizza il simbolo '_' per determinare il controllo di accesso per uno specifico membro dati o una funzione membro di una classe. Una classe in Python ha tre tipi di Modificatori di accesso Python :
- Modificatore di accesso pubblico: I membri di una classe dichiarati pubblici sono facilmente accessibili da qualsiasi parte del programma. Tutti i membri dati e le funzioni membro di una classe sono pubblici per impostazione predefinita.
- Modificatore di accesso protetto: I membri di una classe dichiarati protetti sono accessibili solo a una classe da essa derivata. Tutti i membri dati di una classe vengono dichiarati protetti aggiungendo un singolo simbolo di sottolineatura '_' prima dei membri dati di quella classe.
- Modificatore di accesso privato: I membri di una classe dichiarati privati sono accessibili solo all'interno della classe, il modificatore di accesso privato è il modificatore di accesso più sicuro. I membri dati di una classe vengono dichiarati privati aggiungendo un doppio simbolo di sottolineatura '__' prima del membro dati di quella classe.
49. Cosa sono gli unit test in Python?
Il test unitario è il primo livello di test del software in cui vengono testate le parti testabili più piccole del software. Viene utilizzato per verificare che ciascuna unità del software funzioni come previsto. Il framework di unit test è il framework in stile xUnit di Python. Il metodo White Box Testing viene utilizzato per i test unitari.
50. Blocco globale dell'interprete Python (GIL)?
Blocco interprete globale Python (GIL) è un tipo di blocco dei processi utilizzato da Python ogni volta che ha a che fare con i processi. Generalmente, Python utilizza un solo thread per eseguire l'insieme di istruzioni scritte. Le prestazioni del processo a thread singolo e del processo multi-thread saranno le stesse in Python e ciò è dovuto a GIL in Python. Non possiamo ottenere il multithreading in Python perché abbiamo un blocco globale dell'interprete che limita i thread e funziona come un singolo thread.
51. Cosa sono le annotazioni delle funzioni in Python?
Annotazione della funzione è una funzionalità che consente di aggiungere metadati ai parametri della funzione e restituire valori. In questo modo è possibile specificare il tipo di input dei parametri della funzione e il tipo restituito del valore restituito dalla funzione.
Le annotazioni delle funzioni sono espressioni Python arbitrarie associate a varie parti delle funzioni. Queste espressioni vengono valutate in fase di compilazione e non hanno vita nell'ambiente runtime di Python. Python non attribuisce alcun significato a queste annotazioni. Prendono vita se interpretati da librerie di terze parti, ad esempio mypy.
52. Cosa sono i gruppi di eccezioni in Python?
L'ultima funzionalità di Python 3.11, Gruppi di eccezioni . L'ExceptionGroup può essere gestito utilizzando una nuova sintassi tranne*. Il simbolo * indica che è possibile gestire più eccezioni da ciascuna clausola tranne*.
ExceptionGroup è una raccolta/gruppo di diversi tipi di eccezioni. Senza creare eccezioni multiple possiamo raggruppare insieme diverse eccezioni che possiamo successivamente recuperare una per una quando necessario, l'ordine in cui le eccezioni sono archiviate nel gruppo di eccezioni non ha importanza durante la chiamata.
Python3 try: raise ExceptionGroup('Example ExceptionGroup', ( TypeError('Example TypeError'), ValueError('Example ValueError'), KeyError('Example KeyError'), AttributeError('Example AttributeError') )) except* TypeError: ... except* ValueError as e: ... except* (KeyError, AttributeError) as e: ...> 53. Cos'è l'istruzione Switch di Python
Dalla versione 3.10 in poi, Python ha implementato una funzionalità di cambio caso chiamata corrispondenza di modelli strutturali. Puoi implementare questa funzione con le parole chiave match e case. Nota che il simbolo di sottolineatura è quello che usi per definire un caso predefinito per l'istruzione switch in Python.
Nota : Prima di Python 3.10 Python non supporta le dichiarazioni di corrispondenza.
Python3 match term: case pattern-1: action-1 case pattern-2: action-2 case pattern-3: action-3 case _: action-default>
54. Cos'è l'Operatore Walrus?
L'Operatore Tricheco consente di assegnare un valore a una variabile all'interno di un'espressione. Ciò può essere utile quando è necessario utilizzare un valore più volte in un ciclo, ma non si desidera ripetere il calcolo.
L'operatore Walrus è rappresentato dalla sintassi `:=` e può essere utilizzato in una varietà di contesti, inclusi i cicli while e le istruzioni if.
Nota: Le versioni di Python precedenti alla 3.8 non supportano Walrus Operator.
Python3 names = ['Jacob', 'Joe', 'Jim'] if (name := input('Enter a name: ')) in names: print(f'Hello, {name}!') else: print('Name not found.')>