O que é TDD e qual é o objetivo desta abordagem?
Python
Por exemplo, em qualquer tarefa, conte-nos como procurou os pontos críticos nas consultas ao PostgreSQL: o que usou e como encontrou o problema?
Em que versão do Python trabalhou na última empresa?
Qual é a diferença entre um gerador e uma função normal?
Como é utilizado a Árvore de Sintaxe Abstrata (AST) em Python?
Que tipos de testes conhece?
Em que áreas do desenvolvimento em Python você se considera um especialista mais forte?
Nome os princípios básicos da OOP.
"""Escreva um código que extraia links do texto bruto e os ordene de acordo com regras específicas. A lista de links que será retornada não deve conter duplicados. As regras de ordenação são as seguintes: - Prioridade 1: Primeiro, os links detectados inicialmente, na quantidade de self.first_extracted_links - Prioridade 2: Depois, links para discos na nuvem e documentos (Yandex Disk, etc.) - Prioridade 3: Em seguida, links para arquivos (com extensões .exe, .pdf, .rar, etc. ao final do caminho) - Prioridade 4: Os links restantes ordenados de maior a menor comprimento de string Também deve considerar a limitação na quantidade de links e implementar um gerenciador de contexto. Pode ser executado, por exemplo, em [link] Resumindo: - São concedidos 30 minutos para execução - Escrever funções apply, process, funções para o gerenciador de contexto - Todos os testes devem passar - Os testes não podem ser modificados - Pode usar importações - Após escrever, pode verificar executando localmente e corrigir se necessário regex para busca de links: (?:https?|ftp):\/\/(?:[a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.[a-zA-Z]{2,}(?::\d+)?(?:\/[^\s()]*)?""" class LinkExtractor: DEFAULT_CLOUDS = frozenset(( "drive.google.com", "mediafire.com", "yadi.sk", "disk.yandex.ru", "cloud.mail.ru", "mega.nz" )) # Pode ampliar este método ou reescrevê-lo def __init__(self, max_links: int = 7, first_extracted_links: int = 2, clouds = None): # Número máximo de links a serem retornados self.max_links = max_links # Quantidade de links extraídos para a primeira condição self.first_extracted_links = first_extracted_links # Lista de domínios considerados na nuvem para a segunda condição self.clouds = clouds or self.DEFAULT_CLOUDS self._results = [] # Escrever este método, que adiciona parte do texto para análise def apply(self, text) -> "LinkExtractor": ... return self
É possível aceder a um atributo ou método de uma classe que começa com dois sublinhados? Quais são as características?
Quando e para que escolhe processos (multiprocessing)?
Conte-nos sobre um incidente interessante ou uma situação difícil no trabalho.
O que de bom fizeram na empresa [empresa]? Conte-nos sobre projetos interessantes.
Que tipos de filas como estruturas de dados conhece?
Que ferramentas de profiling em Python conhece?
Existe um módulo que aceitou a tarefa e está dependente. O que vais fazer?
Qual é a diferença entre uma cópia superficial e uma cópia profunda (`copy` e `deepcopy`)?
O que pode causar uma fuga de memória se houver um coletor de lixo?
O que faria se uma consulta SQL pesada se tornar um gargalo?
Como lidar com o crescimento das tabelas no PostgreSQL?