Python
Da li je [ime] interpretirani ili kompajlirani jezik? Koja je razlika između ovih pristupa?
Опишите техничку архитектуру компонента платформе за скорирање који комуницира са ML моделом: раздвајање сервиса и одговорности, комуникације између њих и ваш лични допринос.
obj = {True: 1, 1: 2, 1.0: 3, "1": 4} print(obj) # {True: 3, "1": 4}
# Napišite kod za funkciju cache. Ovo je dekorator koji treba # da pamti šta je dekorisana funkcija vratila i da vraća sačuvanu # vrednost pri ponovnom pozivu sa istim argumentima. # # Može se pretpostaviti da su svi argumenti hashabilni. # Koristite samo standardnu biblioteku Pythona.
Šta možete reći o asinhronim generatorima?
Koju biblioteku ste koristili za interakciju sa Kafka i zašto ste je odabrali umesto klasične Kafka biblioteke?
Kako treba da budu ključevi Python rečnika?
Koliko vam je udobno da radite sa PostgreSQL i čistim SQL-om umesto ORM-a, poput SQLAlchemy?
Kako indeksi utiču na performanse baze podataka?
Да ли те занима да се уронњаваш у архитектуру развоја? Наведи пример блиске сарадње са архитектуром, ако си имао.
Koje sortiranje se koristi u Pythonu i koja je njegova složenost?
Који формат рада тражите: канцеларија, хибрид или удаљен рад?
Da li je moguće implementirati dekorator za metodu putem klase i kako to uraditi?
Испричајте нам о најкомпликованијем техничком или производном изазову са којим сте се суочили: који је био проблем и како сте га решили?
Koji je vaš rok obaveštenja pre otpuštanja?
Kako meriš kvalitet odgovora, koje konkretne metrike koristiš da to ne bude 'gojazno'?
# # Можно считать, что все аргументы хешируемые. # Используйте только стандартную библиотеку 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")
Kako preokrenuti listu [1,2,3] u [3,2,1]? Čime se razlikuje reverse() od sečenja?
# obezbediti poziv end() u funkciji g() # ne modifikovati funkcije, osim 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(): ...
Koja su tvoja očekivanja u vezi plate?