Sobes.tech

Python

Qu'est-ce que le TDD et quel est le sens de cette approche?

208

Prenons l'exemple de n'importe quelle tâche, racontez comment vous avez recherché les points faibles dans les requêtes à PostgreSQL : qu'avez-vous utilisé et comment avez-vous identifié le problème ?

182

Quelle version de Python avez-vous utilisée dans votre dernière entreprise?

182

Quelle est la différence entre un générateur et une fonction normale?

172

Comment l'arbre de syntaxe abstraite (AST) est-il utilisé en Python?

162

Dans quels domaines du développement Python vous considérez-vous comme le spécialiste le plus compétent?

153

Nommez les principes fondamentaux de la POO.

147

"""Écrivez un code qui extrait les liens du texte brut et les trie selon des règles spécifiques. La liste de liens qui sera renvoyée ne doit pas contenir de doublons. Les règles de tri sont les suivantes : - Priorité 1 : d'abord les premiers liens détectés en quantité de self.first_extracted_links - Priorité 2 : ensuite les liens vers des disques en nuage et des documents (Yandex Disk, etc.) - Priorité 3 : puis les liens vers des fichiers (avec extensions .exe, .pdf, .rar, etc. à la fin du chemin) - Priorité 4 : les autres liens triés par ordre décroissant de longueur de chaîne Il faut également prendre en compte la limite du nombre de liens et implémenter un gestionnaire de contexte. On peut l'exécuter, par exemple, dans [link] En résumé : - 30 minutes sont allouées à l'exécution - Écrire les fonctions apply, process, et celles pour le gestionnaire de contexte - Tous les tests doivent réussir - Les tests ne peuvent pas être modifiés - Il est permis d'utiliser des imports - Après avoir écrit, on peut vérifier en exécutant localement et corriger si nécessaire regex pour rechercher des liens : (?: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" )) # Peut étendre cette méthode ou la réécrire def __init__(self, max_links: int = 7, first_extracted_links: int = 2, clouds = None): # Nombre maximum de liens à retourner self.max_links = max_links # Nombre de liens extraits pour la première condition self.first_extracted_links = first_extracted_links # Liste de domaines considérés comme dans le cloud pour la deuxième condition self.clouds = clouds or self.DEFAULT_CLOUDS self._results = [] # Écrire cette méthode, qui ajoute une partie du texte à analyser def apply(self, text) -> "LinkExtractor": ... return self

144

Peut-on accéder à un attribut ou une méthode d'une classe commençant par deux underscores ? Quelles sont les particularités ?

144

Quand et pourquoi choisissez-vous les processus (multiprocessing) ?

142

Parlez d'un incident intéressant ou d'une situation difficile au travail.

137

Quelles bonnes choses ont été faites dans l'entreprise [entreprise] ? Racontez des projets intéressants.

136

Quels types de files d'attente en tant que structures de données connaissez-vous?

135

Quels outils de profilage en Python connaissez-vous?

134

Qu'est-ce qui peut causer une fuite de mémoire s'il y a un ramasse-miettes?

133

Quelle est la différence entre une copie superficielle et une copie profonde (`copy` et `deepcopy`)?

132

Il y a un module qui a accepté la tâche et est en attente. Que feras-tu?

131

Comment lutter contre la croissance des tables dans PostgreSQL?

129

Que feriez-vous si une requête SQL lourde devient un goulot d'étranglement?

129
/4