Python
Qual é o seu período de aviso prévio antes de sair?
Como mede a qualidade das respostas, que métricas específicas usa para que não seja 'à vista'?
# # Pode-se considerar que todos os argumentos são hasháveis. # Use apenas a biblioteca padrão do 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")
Como inverter a lista [1,2,3] para [3,2,1]? Qual é a diferença entre reverse() e fatia?
# garantir a chamada de end() na função g() # não modificar as funções, exceto 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(): ...
Quais são as suas expectativas salariais?
O que são métodos mágicos (métodos dunder)? Por que são chamados mágicos?
Por que é que se pode multiplicar uma string por um número, mas não se pode somar uma string com um número?
Fale mais sobre o microserviço de notificações: sua lógica, dificuldades de desenvolvimento e sua contribuição.
Como era organizado o seu departamento de testes, como era a relação com essa área?
# Escrever código para a função cache. É um decorador que deve # recordar o que a função decorada retornou, e devolver o valor guardado # em chamadas subsequentes com os mesmos argumentos. # Pode-se assumir que todos os argumentos são hasháveis. # Usar apenas a biblioteca padrão do Python. def cache(backend=None): if backend is None: backend = {} def decorator(func): def wrapper(*args, **kwargs): key = (args, tuple(sorted(kwargs.items()))) result = backend.get(key) if result is not None: return result result = func(*args, **kwargs) backend[key] = result return result return wrapper return decorator calls = {"count": 0} backend = {} @cache(backend=backend) 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")
Em que se diferencia a assíncronia da execução paralela? O que implementa a execução paralela em Python?
O que acontece geralmente ao criar uma variável em Python, o que ela tem?
Está interessado em continuar a desenvolver-se em ML?
Qual é a complexidade de tempo e memória adicional da solução com dois ponteiros?
Como foi organizado o worker com o consumidor Kafka: separado ou junto com FastAPI?
def function(test_list: list = []): test_list.append(1) print(test_list) test_list = [] function() function(test_list) function() print(test_list)
Quais parâmetros de risco você conhece que são populares?
Qual foi a pilha no último projeto?
Tem estado envolvido no projeto e desenvolvimento de integrações com sistemas externos dentro do perímetro?