Score %0 (0 correct0 incorrect20 unanswered)

Q1. Cos'è una classe astratta?

  • Una classe astratta è il nome per qualsiasi classe da cui è possibile istanziare un oggetto.
  • Le classi astratte devono essere ridefinite ogni volta che viene istanziato un oggetto da esse.
  • Le classi astratte devono ereditare dalle classi concrete.
  • Una classe astratta esiste solo affinché altre classi "concrete" possano ereditare dalla classe astratta.

riferimento

Q2. Cosa succede quando si utilizza la funzione built-in any() su una lista?

  • La funzione any() restituirà casualmente un qualsiasi elemento dalla lista.
  • La funzione any() restituisce True se qualsiasi elemento nella lista si valuta a True. Altrimenti, restituisce False.
  • La funzione any() prende come argomenti la lista da controllare all'interno e l'elemento da controllare. Se "qualsiasi" degli elementi nella lista corrisponde all'elemento da controllare, la funzione restituisce True.
  • La funzione any() restituisce un valore booleano che risponde alla domanda "Ci sono elementi in questa lista?"

esempio

if any([True, False, False, False]) == True:
    print('Sì, c'è True')
>>> 'Sì, c'è True'

Q3. A quale struttura dati degenera un albero binario se non è bilanciato correttamente?

  • lista collegata
  • coda
  • insieme
  • OrderedDict

riferimento

Q4. Quale affermazione sui metodi statici è vera?

  • I metodi statici sono chiamati statici perché restituiscono sempre None.
  • I metodi statici possono essere legati sia a una classe che a un'istanza di una classe.
  • I metodi statici servono principalmente come metodi di utilità o metodi di supporto poiché non possono accedere o modificare lo stato di una classe.
  • I metodi statici possono accedere e modificare lo stato di una classe o di un'istanza di una classe.

riferimento

Q5. Cosa sono gli attributi?

  • Gli attributi sono versioni estese di un'istruzione if/else, utilizzate durante il test per l'uguaglianza tra oggetti.
  • Gli attributi sono un modo per contenere dati o descrivere uno stato per una classe o un'istanza di una classe.
  • Gli attributi sono stringhe che descrivono le caratteristiche di una classe.
  • Gli argomenti delle funzioni vengono chiamati "attributi" nel contesto dei metodi di classe e dei metodi di istanza.

Spiegazione: Gli attributi sono definiti sotto la classe, e gli argomenti vanno sotto le funzioni. Gli argomenti si riferiscono di solito ai parametri, mentre gli attributi sono i costruttori della classe o di un'istanza di una classe.

Q6. Qual è il termine per descrivere questo codice?

count, fruit, price = (2, 'apple', 3.5)

  • Assegnamento di tupla.
  • Scompattamento di tupla.
  • Corrispondenza di tupla.
  • Duplicazione di tupla.

Riferimento

Q7. Quale metodo della lista built-in useresti per rimuovere elementi da una lista?

  • Metodo .delete()
  • pop(my_list)
  • del(my_list)
  • Metodo .pop()

Riferimento

esempio

my_list = [1,2,3]
my_list.pop(0)
my_list
>>>[2,3]

Q8. Qual è uno degli usi più comuni della libreria sys di Python?

  • Per catturare gli argomenti della riga di comando forniti durante l'esecuzione di un file.
  • Per connettere vari sistemi, come connettere un front end web, un servizio API, un database e un'app mobile.
  • Per fare uno snapshot di tutti i pacchetti e le librerie nel tuo ambiente virtuale.
  • Per scandire la salute del tuo ecosistema Python mentre sei all'interno di un ambiente virtuale.

riferimento

Q9. Qual è il tempo di esecuzione per accedere a un valore in un dizionario usando la sua chiave?

  • O(n), anche chiamato tempo lineare.
  • O(log n), anche chiamato tempo logaritmico.
  • O(n^2), anche chiamato tempo quadratico.
  • O(1), anche chiamato tempo costante.

Q10. Qual è la sintassi corretta per definire una classe chiamata Game, se eredita da una classe genitore chiamata LogicGame?

  • class Game(LogicGame): pass
  • def Game(LogicGame): pass
  • def Game.LogicGame(): pass
  • class Game.LogicGame(): pass

Spiegazione: La classe genitore ereditata viene passata come argomento alla classe figlio. Pertanto, qui la prima opzione è la risposta corretta.

Q11. Qual è il formato corretto per scrivere un doctest?

  • A
def sum(a, b):
    """
    sum(4, 3)
    7

    sum(-4, 5)
    1
    """
    return a + b
  • B
def sum(a, b):
    """
    >>> sum(4, 3)
    7

    >>> sum(-4, 5)
    1
    """
    return a + b
  • C
def sum(a, b):
    """
    # >>> sum(4, 3)
    # 7

    # >>> sum(-4, 5)


    # 1
    """
    return a + b
  • D
def sum(a, b):
    ###
    >>> sum(4, 3)
    7

    >>> sum(-4, 5)
    1
    ###
    return a + b

Spiegazione: Utilizzare ''' per iniziare la documentazione e aggiungere l'output della cella dopo >>>

Q12. Quale tipo di dato incorporato di Python è comunemente usato per rappresentare uno stack?

  • set
  • list
  • None
  • dictionary
  • È possibile costruire uno stack da zero.

Q13. Cosa restituirebbe questa espressione?

college_years = ['Freshman', 'Sophomore', 'Junior', 'Senior']
return list(enumerate(college_years, 2019))
  • [('Freshman', 2019), ('Sophomore', 2020), ('Junior', 2021), ('Senior', 2022)]
  • [(2019, 2020, 2021, 2022), ('Freshman', 'Sophomore', 'Junior', 'Senior')]
  • [('Freshman', 'Sophomore', 'Junior', 'Senior'), (2019, 2020, 2021, 2022)]
  • [(2019, 'Freshman'), (2020, 'Sophomore'), (2021, 'Junior'), (2022, 'Senior')]

Q14. Qual è lo scopo della parola chiave "self" quando si definiscono o si chiamano metodi di istanza?

  • self significa che non sono richiesti altri argomenti da passare al metodo.
  • Non c'è uno scopo reale per il metodo self; è solo un gergo storico dell'informatica che Python mantiene per rimanere coerente con altri linguaggi di programmazione.
  • self si riferisce all'istanza la cui il metodo è stato chiamato.
  • self si riferisce alla classe da cui è stata ereditata per creare l'oggetto usando self.

Riferimento

Esempio semplice

class my_secrets:
    def __init__(self, password):
        self.password = password
        pass
instance = my_secrets('1234')
instance.password
>>>'1234'

Q15. Quale di questi NON è una caratteristica delle namedtuple?

  • È possibile assegnare un nome a ciascun membro della namedtuple e fare riferimento ad essi in questo modo, in modo simile a come si accedono alle chiavi in un dictionary.
  • Ciascun membro di un oggetto namedtuple può essere indicizzato direttamente, proprio come in una normale tuple.
  • Le namedtuple sono altrettanto efficienti in termini di memoria come le tuple regolari.
  • Non è necessario importare le namedtuple perché sono disponibili nella libreria standard.

È necessario importarle utilizzando: from collections import namedtuple

Q16. Cosa è un metodo di istanza?

  • I metodi di istanza possono modificare lo stato di un'istanza o lo stato della sua classe genitore.
  • I metodi di istanza contengono dati correlati all'istanza.
  • Un metodo di istanza è qualsiasi metodo di classe che non richiede argomenti.
  • Un metodo di istanza è una funzione regolare che appartiene a una classe, ma deve restituire None.

Q17. Quale affermazione NON descrive il concetto di incapsulamento della programmazione orientata agli oggetti?

  • Protegge i dati da interferenze esterne.
  • Una classe genitore è incapsulata e nessun dato della classe genitore passa alla classe figlio.
  • Mantiene i dati e i metodi che possono manipolare quei dati in un unico luogo.
  • Consente solo ai dati di essere modificati da metodi.

Riferimento

Q18. Qual è l'uso di un'istruzione if/else?

  • Indica al computer quale frammento di codice eseguire se le istruzioni che hai codificato non sono corrette.
  • Esegue un frammento di codice se tutti gli import sono riusciti e un altro frammento di codice se gli import non sono riusciti.
  • Esegue un frammento di codice se una condizione è vera, ma un altro frammento di codice se la condizione è falsa.
  • Indica al computer quale frammento di codice eseguire se c'è abbastanza memoria per gestirlo e quale frammento di codice eseguire se non c'è abbastanza memoria per gestirlo.

Riferimento

Q19. Quale tipo di dati incorporato di Python è più adatto per implementare una coda?

  • dizionario
  • insieme
  • Nessuno. Puoi creare una coda solo da zero.
  • lista

Q20. Qual è la sintassi corretta per istanziare un nuovo oggetto del tipo Game?

  • my_game = class.Game()
  • my_game = class(Game)
  • my_game = Game()
  • my_game = Game.create()

Riferimento