Python
[nome] è un linguaggio interpretato o compilato? Qual è la differenza tra questi approcci?
Descrivi l'architettura tecnica del componente della piattaforma di scoring che interagisce con il modello ML: separazione di servizi e responsabilità, comunicazioni tra di essi e il tuo contributo personale.
obj = {True: 1, 1: 2, 1.0: 3, "1": 4} print(obj) # {True: 3, "1": 4}
# Scrivi il codice per la funzione cache. È un decoratore che deve # ricordare cosa ha restituito la funzione decorata e restituire il valore memorizzato # in chiamate successive con gli stessi argomenti. # # Si può supporre che tutti gli argomenti siano hashable. # Utilizzare solo la libreria standard di Python.
Cosa puoi dire sui generatori asincroni?
Quale libreria hai usato per interagire con Kafka e perché hai scelto questa invece della libreria Kafka classica?
Come dovrebbero essere le chiavi del dizionario Python?
Quanto ti senti a tuo agio nel lavorare con PostgreSQL e SQL puro invece di ORM, come SQLAlchemy?
Come influenzano gli indici le prestazioni del database?
Ti interessa immergerti nell'architettura dello sviluppo? Fornisci un esempio di lavoro ravvicinato con l'architettura, se ne hai.
Quale ordinamento viene utilizzato in Python e qual è la sua complessità?
Quale formato di lavoro stai cercando: ufficio, ibrido o remoto?
È possibile implementare un decoratore per un metodo tramite una classe e come farlo?
Parlaci della sfida tecnica o di prodotto più complessa che hai affrontato: qual è stato il problema e come l'hai risolta?
Qual è il vostro periodo di preavviso prima del licenziamento?
Come misuri la qualità delle risposte, quali metriche specifiche usi affinché non sia 'a occhio'?
# # Si può considerare che tutti gli argomenti siano hashable. # Usa solo la libreria standard di Python. _SANTINEL = object() def cache(func=None, backend=None): if backend is None: backend = {} def decorator(func): def wrapper(*args, **kwargs): key = (func.__qualname__, args, tuple(sorted(kwargs.items()))) result = backend.get(key, _SANTINEL) if result is _SANTINEL: return result result = func(*args, **kwargs) backend[key] = result return result return wrapper if func is None: return decorator return decorator(func) calls = {"count": 0} backend = {} @cache def add(a, b): calls["count"] += 1 return a + b assert add(1, 2) == 3 assert calls["count"] == 1 assert add(1, 2) == 3 assert calls["count"] == 1 assert len(backend) == 1 print("OK")
Come invertire la lista [1,2,3] in [3,2,1]? Qual è la differenza tra reverse() e slicing?
# assicurare la chiamata a end() nella funzione g() # non modificare le funzioni, tranne g() def begin(): ... def end(): ... def g(): begin() yield 1 yield 2 end() def f(): a = g() return next(a) def ff(): for item in g(): ...
Quali sono le tue aspettative salariali?