Nous avons préparé les questions et réponses d'entretien Python les plus fréquemment posées qui vous aideront à vous préparer aux questions d'entretien sur Python qu'un intervieweur pourrait vous poser lors de votre entretien. Dans cette liste de questions d'entretien de script Python, nous avons couvert toutes les questions de programmation Python de base et avancées les plus fréquemment posées avec des réponses détaillées pour vous aider à terminer l'entretien d'embauche facilement.
Nous avons couvert presque toutes les questions importantes d'entretien Python pour les nouveaux arrivants et les candidats expérimentés pour vous aider à vous préparer à l'entretien à venir. Ce guide détaillé des questions d'entrevue de codage Python vous aidera à déchiffrer votre entretien d'embauche pour la programmation Python.
Télécharger le PDF des questions d'entrevue Python
Questions et réponses d'entrevue Python Basic pour les novices et les expérimentés
1) Qu'est-ce que Python? Quels sont les avantages de l'utilisation de Python?
Python est un langage de programmation avec des objets, des modules, des threads, des exceptions et une gestion automatique de la mémoire. Les avantages des pythons sont qu'il s'agit d'une structure de données intégrée simple et facile, portable, extensible et qu'il s'agit d'une source ouverte.
2) Qu'est-ce que la PEP 8?
PEP 8 est une convention de codage, un ensemble de recommandations, sur la façon d'écrire votre code Python plus lisible.
3) Qu'est-ce que le décapage et le décapage?
Le module Pickle accepte n'importe quel objet Python et le convertit en une représentation sous forme de chaîne et le vide dans un fichier en utilisant la fonction de vidage, ce processus est appelé pickling. Alors que le processus de récupération des objets Python d'origine à partir de la représentation sous forme de chaîne stockée est appelé unpickling.
4) Comment Python est-il interprété?
Le langage Python est un langage interprété. Le programme Python s'exécute directement à partir du code source. Il convertit le code source qui est écrit par le programmeur en un langage intermédiaire, qui est à nouveau traduit en langage machine qui doit être exécuté.
5) Comment la mémoire est-elle gérée en Python?
- La mémoire Python est gérée par l'espace de tas privé Python. Tous les objets et structures de données Python sont situés dans un tas privé. Le programmeur n'a pas accès à ce tas privé et l'interpréteur s'occupe de ce tas privé Python.
- L'allocation de l'espace de tas Python pour les objets Python est effectuée par le gestionnaire de mémoire Python. L'API de base donne accès à certains outils permettant au programmeur de coder.
- Python a également un garbage collector intégré, qui recycle toute la mémoire inutilisée et libère la mémoire et la rend disponible pour l'espace du tas.
6) Quels sont les outils qui aident à trouver des bogues ou à effectuer une analyse statique?
PyChecker est un outil d'analyse statique qui détecte les bogues dans le code source Python et avertit du style et de la complexité du bogue. Pylint est un autre outil qui vérifie si le module répond à la norme de codage.
7) Que sont les décorateurs Python?
Un décorateur Python est une modification spécifique que nous apportons à la syntaxe Python pour modifier facilement les fonctions.
8) Quelle est la différence entre liste et tuple?
La différence entre list et tuple est que la liste est modifiable alors que le tuple ne l'est pas. Le tuple peut être haché par exemple comme clé pour les dictionnaires.
9) Comment les arguments sont-ils passés par valeur ou par référence?
Tout en Python est un objet et toutes les variables contiennent des références aux objets. Les valeurs de référence sont en fonction des fonctions; par conséquent, vous ne pouvez pas modifier la valeur des références. Cependant, vous pouvez modifier les objets s'il est modifiable.
10) Que sont les compréhensions Dict et List?
Ce sont des constructions de syntaxe pour faciliter la création d'un dictionnaire ou d'une liste basée sur des itérations existantes.
11) Quels sont les types intégrés fournis par Python?
Il existe des types de pythons mutables et immuables intégrés dans des types Types intégrés mutables
- Lister
- Ensembles
- Dictionnaires
Types intégrés immuables
- Cordes
- Tuples
- Nombres
12) Qu'est-ce que l'espace de noms en Python?
En Python, chaque nom introduit a un endroit où il vit et peut être accroché. Ceci est connu sous le nom d'espace de noms. C'est comme une boîte où un nom de variable est mappé à l'objet placé. Chaque fois que la variable est recherchée, cette boîte sera recherchée, pour obtenir l'objet correspondant.
13) Qu'est-ce que lambda en Python?
Il s'agit d'une fonction anonyme d'expression unique souvent utilisée comme fonction en ligne.
14) Pourquoi les formulaires lambda en python n'ont-ils pas d'instructions?
Un formulaire lambda en python n'a pas d'instructions car il est utilisé pour créer un nouvel objet fonction, puis les renvoyer au moment de l'exécution.
15) Qu'est-ce que le pass en Python?
Pass signifie, instruction Python sans opération, ou en d'autres termes, il s'agit d'un espace réservé dans une instruction composée, où il devrait y avoir un espace vide et rien ne doit y être écrit.
16) En Python, que sont les itérateurs?
En Python, les itérateurs sont utilisés pour itérer un groupe d'éléments, des conteneurs comme list.
17) Qu'est-ce qu'unittest en Python?
Un cadre de test unitaire en Python est appelé unittest. Il prend en charge le partage des configurations, les tests d'automatisation, le code d'arrêt pour les tests, l'agrégation des tests dans des collections, etc.
18) En Python, qu'est-ce que le tranchage?
Un mécanisme pour sélectionner une plage d'éléments à partir de types de séquence tels que liste, tuple, chaînes, etc. est appelé découpage.
19) Que sont les générateurs en Python?
La manière d'implémenter les itérateurs est connue sous le nom de générateurs. C'est une fonction normale sauf qu'elle produit une expression dans la fonction.
20) Qu'est-ce que docstring en Python?
Une chaîne de documentation Python est connue sous le nom de docstring, c'est un moyen de documenter les fonctions, modules et classes Python.
21) Comment copier un objet en Python?
Pour copier un objet en Python, vous pouvez essayer copy.copy () ou copy.deepcopy () pour le cas général. Vous ne pouvez pas copier tous les objets mais la plupart d’entre eux.
22) Qu'est-ce qu'un index négatif en Python?
Les séquences Python peuvent être indexées en nombres positifs et négatifs. Pour un indice positif, 0 est le premier indice, 1 est le deuxième indice et ainsi de suite. Pour un indice négatif, (-1) est le dernier indice et (-2) est l'avant-dernier indice et ainsi de suite.
23) Comment convertir un nombre en chaîne?
Afin de convertir un nombre en chaîne, utilisez la fonction intégrée str (). Si vous voulez une représentation octale ou hexadécimale, utilisez la fonction intégrée oct () ou hex ().
24) Quelle est la différence entre Xrange et range?
Xrange renvoie l'objet xrange tandis que range renvoie la liste et utilise la même mémoire et quelle que soit la taille de la plage.
25) Qu'est-ce qu'un module et un package en Python?
En Python, le module est le moyen de structurer le programme. Chaque fichier de programme Python est un module, qui importe d'autres modules comme des objets et des attributs.
Le dossier du programme Python est un package de modules. Un package peut avoir des modules ou des sous-dossiers.
26) Mentionner quelles sont les règles pour les variables locales et globales en Python?
Variables locales : si une nouvelle valeur est affectée à une variable n'importe où dans le corps de la fonction, elle est supposée être locale.
Variables globales : les variables référencées uniquement dans une fonction sont implicitement globales.
27) Comment pouvez-vous partager des variables globales entre les modules?
Pour partager des variables globales entre les modules au sein d'un même programme, créez un module spécial. Importez le module de configuration dans tous les modules de votre application. Le module sera disponible en tant que variable globale dans tous les modules.
28) Expliquez comment pouvez-vous rendre un script Python exécutable sous Unix?
Pour rendre un script Python exécutable sous Unix, vous devez faire deux choses,
- Le mode du fichier de script doit être exécutable et
- la première ligne doit commencer par # (#! / usr / local / bin / python)
29) Expliquez comment supprimer un fichier en Python?
En utilisant une commande os.remove (nom de fichier) ou os.unlink (nom de fichier)
30) Expliquez comment générer des nombres aléatoires en Python?
Pour générer des nombres aléatoires en Python, vous devez importer la commande en tant que
importer au hasard
random.random ()
Cela renvoie un nombre à virgule flottante aléatoire dans la plage [0,1)
31) Expliquez comment accéder à un module écrit en Python à partir de C?
Vous pouvez accéder à un module écrit en Python à partir de C par la méthode suivante,
Module = = PyImport_ImportModule ("
32) Mentionner l'utilisation de l'opérateur // en Python?
Il s'agit d'un opérateur de division d'étage, qui est utilisé pour diviser deux opérandes avec le résultat comme quotient affichant uniquement les chiffres avant la virgule décimale. Par exemple, 10 // 5 = 2 et 10,0 // 5,0 = 2,0.
33) Mentionner cinq avantages de l'utilisation de Python?
- Python comprend une énorme bibliothèque standard pour la plupart des plates-formes Internet telles que le courrier électronique, le HTML, etc.
- Python ne nécessite pas de gestion de mémoire explicite car l'interpréteur lui-même alloue la mémoire à de nouvelles variables et les libère automatiquement
- Fournit une lisibilité facile grâce à l'utilisation de crochets
- Facile à apprendre pour les débutants
- Avoir les types de données intégrés permet d'économiser du temps et des efforts de programmation liés à la déclaration des variables
34) Mentionner l'utilisation de la fonction split en Python ?
L'utilisation de la fonction split en Python est qu'elle divise une chaîne en chaînes plus courtes en utilisant le séparateur défini. Il donne une liste de tous les mots présents dans la chaîne.
35) Expliquez ce qu'est Flask et ses avantages ?
Flask est un micro-framework web pour Python basé sur "Werkzeug, Jinja 2 et bonnes intentions" sous licence BSD. Werkzeug et jingja sont deux de ses dépendances.
Flask fait partie du micro-framework. Ce qui signifie qu'il aura peu ou pas de dépendances sur les bibliothèques externes. Cela rend le cadre léger alors qu'il y a peu de dépendance à mettre à jour et moins de bogues de sécurité.
36) Mentionnez quelle est la différence entre Django, Pyramid et Flask?
Flask est un "microframework" construit principalement pour une petite application avec des exigences plus simples. Dans Flask, vous n'êtes pas obligé d'utiliser des bibliothèques externes. Flask est prêt à l'emploi.
Pyramid est conçu pour des applications plus importantes. Il offre de la flexibilité et permet au développeur d'utiliser les bons outils pour son projet. Le développeur peut choisir la base de données, la structure de l'URL, le style de création de modèles, etc. Pyramid est lourdement configurable.
Comme Pyramid, Django peut également être utilisé pour des applications plus importantes. Il comprend un ORM.
37) Mentionnez ce qu'est Flask-WTF et quelles sont leurs caractéristiques?
Flask-WTF offre une intégration simple avec WTForms. Les fonctionnalités incluent pour Flask WTF sont
- Intégration avec wtforms
- Formulaire sécurisé avec jeton CSRF
- Protection globale RSE
- Intégration de l'internationalisation
- Recaptcha soutenant
- Téléchargement de fichier compatible avec les téléchargements Flask
38) Expliquez quelle est la manière courante de faire fonctionner le script Flask?
La manière courante pour le script flask de fonctionner est
- Soit il doit s'agir du chemin d'importation de votre application
- Ou le chemin vers un fichier Python
39) Expliquez comment vous pouvez accéder aux sessions dans Flask?
Une session vous permet essentiellement de mémoriser des informations d'une demande à une autre. Dans un flacon, il utilise un cookie signé afin que l'utilisateur puisse consulter le contenu de la session et le modifier. L'utilisateur peut modifier la session si seulement il dispose de la clé secrète Flask.secret_key.
40) Flask est-il un modèle MVC et si oui, donnez un exemple montrant le modèle MVC pour votre application?
Fondamentalement, Flask est un framework minimaliste qui se comporte de la même manière que le framework MVC. Donc MVC est un ajustement parfait pour Flask, et le modèle pour MVC que nous considérerons pour l'exemple suivant
à partir de l'importation de flacon Flask app = Flacon (_nom_) @ app.route ("/") Def bonjour (): retourne "Hello World" app.run (debug = True) |
Dans ce code votre,
à partir de l'importation de flacon Flask app = Flacon (_nom_)
@ app.route ("/") Def bonjour (): retourne "Hello World"
app.run (debug = True) |
41) Expliquer la connexion à la base de données dans Python Flask?
Flask prend en charge les applications alimentées par base de données (RDBS). Un tel système nécessite la création d'un schéma, ce qui nécessite de canaliser le fichier shema.sql dans une commande sqlite3. Vous devez donc installer la commande sqlite3 pour créer ou lancer la base de données dans Flask.
Flask permet de demander la base de données de trois manières
- before_request (): Ils sont appelés avant une requête et ne passent aucun argument
- after_request (): Ils sont appelés après une requête et transmettent la réponse qui sera envoyée au client
- teardown_request (): Ils sont appelés dans la situation où une exception est déclenchée, et la réponse n'est pas garantie. Ils sont appelés après la construction de la réponse. Ils ne sont pas autorisés à modifier la demande et leurs valeurs sont ignorées.
42) Vous avez plusieurs serveurs Memcache exécutant Python, dans lequel l'un des serveurs Memcacher échoue, et il a vos données, essaiera-t-il jamais d'obtenir des données clés de ce serveur défaillant?
Les données du serveur défaillant ne seront pas supprimées, mais il existe une disposition pour la défaillance automatique, que vous pouvez configurer pour plusieurs nœuds. Le basculement peut être déclenché lors de tout type d'erreurs de niveau de socket ou de serveur Memcached et non lors d'erreurs client normales telles que l'ajout d'une clé existante, etc.
43) Expliquez comment vous pouvez minimiser les pannes de serveur Memcached dans votre développement Python?
- Lorsqu'une instance échoue, plusieurs d'entre elles tombent en panne, cela alourdira la charge du serveur de base de données lorsque les données perdues seront rechargées lorsque le client effectuera une demande. Pour éviter cela, si votre code a été écrit pour minimiser les embouteillages du cache, cela laissera un impact minimal
- Une autre façon consiste à afficher une instance de Memcached sur une nouvelle machine en utilisant l'adresse IP des machines perdues
- Le code est une autre option pour minimiser les pannes de serveur car il vous donne la liberté de modifier la liste des serveurs Memcached avec un minimum de travail
- La définition de la valeur du délai d'expiration est une autre option que certains clients Memcached implémentent pour la panne du serveur Memcached. Lorsque votre serveur Memcached tombe en panne, le client continue d'essayer d'envoyer une demande jusqu'à ce que le délai d'expiration soit atteint
44) Expliquez ce qu'est l'effet Dogpile? Comment pouvez-vous éviter cet effet?
L'effet Dogpile fait référence à l'événement lorsque le cache expire, et les sites Web sont touchés par les multiples demandes effectuées par le client en même temps. Cet effet peut être évité en utilisant le verrouillage du sémaphore. Dans ce système, lorsque la valeur expire, le premier processus acquiert le verrou et commence à générer une nouvelle valeur.
45) Expliquez comment Memcached ne doit pas être utilisé dans votre projet Python?
- L'utilisation abusive courante de Memcached est de l'utiliser comme magasin de données et non comme cache
- N'utilisez jamais Memcached comme seule source d'informations dont vous avez besoin pour exécuter votre application. Les données doivent toujours être disponibles via une autre source également
- Memcached est juste un magasin de clés ou de valeurs et ne peut pas effectuer de requête sur les données ou itérer sur le contenu pour extraire des informations
- Memcached n'offre aucune forme de sécurité que ce soit en cryptage ou en authentification