Python és l'idioma més utilitzat a les principals empreses com Intel, IBM, NASA, Pixar, Netflix, Facebook, JP Morgan Chase, Spotify i moltes més pel seu rendiment i les seves potents biblioteques. Per entrar en aquestes empreses i organitzacions com a desenvolupador de Python, cal dominar algunes coses importants Preguntes d'entrevista Python per trencar la seva ronda d'avaluació en línia de Python i la seva ronda d'entrevistes de Python. Hem preparat una llista dels Les 50 millors preguntes d'entrevista de Python juntament amb les seves respostes a les entrevistes.
Preguntes d'entrevista Python
que gran és el meu monitor
Taula de contingut
- Preguntes bàsiques de l'entrevista de Python per a Freshers
- 1. Què és Python? Enumereu algunes aplicacions populars de Python al món de la tecnologia.
- 2. Quins són els beneficis d'utilitzar el llenguatge Python com a eina en l'escenari actual?
- 3. Python és un llenguatge compilat o un llenguatge interpretat?
- 4. Què fa el símbol ‘#’ a Python?
- 6. Com es passen els arguments per valor o per referència a Python?
- 7. Quina diferència hi ha entre un conjunt i un diccionari?
- 8. Què és la comprensió de llistes? Posa un exemple.
- 9. Què és una funció lambda?
- 10. Què és una passada en Python?
- 11. Quina diferència hi ha entre / i // a Python?
- 12. Com es fa el maneig excepcional a Python?
- 13. Què és la funció swapcase a Python?
- 14. Diferència entre el bucle for i el bucle while a Python
- 15. Podem passar una funció com a argument en Python?
- 16. Què són *args i *kwargs?
- 17. Es requereix sagnat a Python?
- 18. Què és Scope a Python?
- 19. Què és docstring a Python?
- 20. Què és un llenguatge escrit dinàmicament?
- 21. Què és un descans, continuar i passar a Python?
- 23. Com es fa un nombre en Python?
- Preguntes d'entrevista de Python intermedi
- 24. Quina diferència hi ha entre les funcions xrange i range?
- 25. Què és la comprensió del diccionari? Posa un exemple
- 26. És comprensió tuple? En cas afirmatiu, com, i si no per què?
- 27. Diferenciar entre llista i tupla?
- 28. Quina diferència hi ha entre una còpia superficial i una còpia profunda?
- 29. Quina tècnica d'ordenació utilitzen les funcions sort() i sorted() de Python?
- 30. Què són els decoradors?
- 31. Com depureu un programa Python?
- 32. Què són els iteradors a Python?
- 33. Què són els generadors a Python?
- 34. Python admet l'herència múltiple?
- 35. Què és el polimorfisme en Python?
- 36. Definiu l'encapsulació en Python?
- 38. Com es fa la gestió de la memòria a Python?
- 39. Com esborrar un fitxer amb Python?
- 40. Què és tallar a Python?
- 41. Què és un espai de noms a Python?
- Preguntes i respostes de l'entrevista avançada de Python
- 42. Què és el PIP?
- 43. Què és una funció zip?
- 44. Què són el decapat i el decapatge?
- 45. Què és el pedaç de mico a Python?
- 46. Què és __init__() a Python?
- 47. Escriure un codi per mostrar l'hora actual?
- 48. Què són els especificadors d'accés a Python?
- 49. Què són les proves unitàries a Python?
- 50. Python Global Interpreter Lock (GIL)?
- 51. Què són les anotacions de funcions a Python?
- 52. Què són els grups d'excepcions a Python?
- 53. Què és Python Switch Statement
- 54. Què és Walrus Operator?
Preguntes bàsiques de l'entrevista de Python per a Freshers
1. Què és Python? Enumereu algunes aplicacions populars de Python al món de la tecnologia.
Python és un llenguatge de programació d'alt nivell i de propòsit general molt utilitzat. Va ser creat per Guido van Rossum el 1991 i desenvolupat per la Python Software Foundation. Va ser dissenyat amb èmfasi en la llegibilitat del codi i la seva sintaxi permet als programadors expressar els seus conceptes en menys línies de codi.
S'utilitza per a:
- Script del sistema
- Desenvolupament web
- Desenvolupament del joc
- Desenvolupament de software
- Matemàtiques complexes
2. Quins són els beneficis d'utilitzar el llenguatge Python com a eina en l'escenari actual?
Els següents són els avantatges d'utilitzar el llenguatge Python:
- Llenguatge orientat a objectes
- Llenguatge d'alt nivell
- Llenguatge tipificat dinàmicament
- Ampli suport Biblioteques
- Presència de mòduls de tercers
- Desenvolupament de codi obert i comunitat
- Portàtil i interactiu
- Portable a través de sistemes operatius
3. Python és un llenguatge compilat o un llenguatge interpretat?
De fet, Python és un llenguatge parcialment compilat i parcialment interpretat. La part de compilació es fa primer quan executem el nostre codi i això generarà codi de bytes internament, aquest codi de bytes es converteix per la màquina virtual de Python (p.v.m) segons la plataforma subjacent (màquina + sistema operatiu).
4. Què fa el símbol ‘#’ a Python?
'#' s'utilitza per comentar tot el que ve després a la línia.
Els tipus de dades immutables no es poden editar, és a dir, no es poden canviar en temps d'execució. Per exemple: corda, tupla, etc.
6. Com es passen els arguments per valor o per referència a Python?
Tot en Python és un objecte i totes les variables contenen referències als objectes. Els valors de referència són segons les funcions; com a resultat, no podeu canviar el valor de les referències. Tanmateix, podeu canviar els objectes si és mutable.
7. Quina diferència hi ha entre un conjunt i un diccionari?
El conjunt és una col·lecció no ordenada de tipus de dades que és iterable, mutable i no té elements duplicats.
Un diccionari en Python és una col·lecció ordenada de valors de dades, que s'utilitza per emmagatzemar valors de dades com un mapa.
8. Què és la comprensió de llistes? Posa un exemple.
La comprensió de llistes és una construcció de sintaxi per facilitar la creació d'una llista basada en iterables existents.
Per exemple:
my_list = [i for i in range(1, 10)]>
9. Què és una funció lambda?
Una funció lambda és una funció anònima. Aquesta funció pot tenir qualsevol nombre de paràmetres, però només pot tenir una instrucció. Per exemple:
a = lambda x, y : x*y print(a(7, 19))>
10. Què és una passada en Python?
Passar significa no realitzar cap operació o, en altres paraules, és un marcador de posició a la instrucció composta, on hauria de quedar un espai en blanc i no s'ha d'escriure res.
11. Quina diferència hi ha entre / i // a Python?
/ representa una divisió precisa (el resultat és un nombre de coma flotant) mentre que // representa la divisió de planta (el resultat és un nombre enter). Per exemple:
5//2 = 2 5/2 = 2.5>
12. Com es fa el maneig excepcional a Python?
Hi ha 3 paraules clau principals, és a dir, provar, excepte i, finalment, que s'utilitzen per detectar excepcions i gestionar el mecanisme de recuperació en conseqüència. Try és el bloc d'un codi que es controla per detectar errors. Excepte que el bloc s'executa quan es produeix un error.
La bellesa del bloc final és executar el codi després de provar un error. Aquest bloc s'executa independentment de si s'ha produït un error o no. Finalment, el bloc s'utilitza per fer les activitats de neteja necessàries d'objectes/variables.
13. Què és la funció swapcase a Python?
És una funció de cadena que converteix tots els caràcters majúscules en minúscules i viceversa. S'utilitza per alterar el cas existent de la cadena. Aquest mètode crea una còpia de la cadena que conté tots els caràcters del cas d'intercanvi. Per exemple:
string = 'techcodeview.com' string.swapcase() --->'geEKSFORgEEKS'>>>14. Diferència entre el bucle for i el bucle while a Python
El bucle for s'utilitza generalment per iterar a través dels elements de diversos tipus de col·lecció, com ara Llista , Tuple , Conjunt , i Diccionari . Els desenvolupadors utilitzen un bucle for on tenen l'inici i el final de les condicions. Mentre que, el bucle while és la característica de bucle real que s'utilitza en qualsevol altre llenguatge de programació. Els programadors utilitzen un bucle while de Python on només tenen les condicions finals.
15. Podem passar una funció com a argument en Python?
Sí, es poden passar diversos arguments a una funció, inclosos objectes, variables (del mateix tipus de dades o diferents) i funcions. Les funcions es poden passar com a paràmetres a altres funcions perquè són objectes. Les funcions d'ordre superior són funcions que poden prendre altres funcions com a arguments.
Per llegir-ne més, consulteu l'article: Passant la funció com a argument a Python
16. Què són *args i *kwargs?
Per passar un nombre variable d'arguments a una funció en Python, utilitzeu la sintaxi especial *args i **kwargs a l'especificació de la funció. S'utilitza per passar una llista d'arguments de longitud variable i sense paraules clau. Mitjançant l'ús de l'*, la variable que associem a l'* es fa iterable, la qual cosa us permet fer-hi operacions, com ara iterar-hi i utilitzar operacions d'ordre superior com el mapa i el filtre.
17. Es requereix sagnat a Python?
Sí, sagnia és necessari a Python. A Python Es pot informar a l'intèrpret que un grup d'instruccions pertany a un bloc de codi específic mitjançant el sagnat de Python. Les sagnacions fan que el codi sigui fàcil de llegir per als desenvolupadors en tots els llenguatges de programació, però a Python, és molt important sagnar el codi en un ordre específic.
18. Què és Scope a Python?
La ubicació on podem trobar una variable i també accedir-hi si és necessari s'anomena abast d'una variable.
- Variable local de Python: Les variables locals són aquelles que s'inicien dins d'una funció i són exclusives d'aquesta funció. No es pot accedir fora de la funció.
- Variables globals de Python: Les variables globals són les que es defineixen i es declaren fora de qualsevol funció i no s'especifiquen a cap funció.
- Àmbit a nivell de mòdul: Es refereix als objectes globals del mòdul actual accessibles al programa.
- Àmbit exterior: Es refereix a qualsevol nom integrat que el programa pot cridar. El nom al qual es fa referència es troba l'últim entre els objectes d'aquest àmbit.
19. Què és docstring a Python?
Les cadenes de documentació de Python (o docstrings) proporcionen una manera còmoda d'associar la documentació amb mòduls, funcions, classes i mètodes de Python.
- Declaració de Docstrings: Les cadenes de documents es declaren utilitzant 'cometes simples triples' o cometes dobles triples just a sota de la declaració de classe, mètode o funció. Totes les funcions haurien de tenir una cadena de documents.
- Accés a Docstrings: Es pot accedir a les cadenes de documents mitjançant el mètode __doc__ de l'objecte o mitjançant la funció d'ajuda.
20. Què és un llenguatge escrit dinàmicament?
Llengües mecanografiades són els idiomes en què definim el tipus de tipus de dades i serà conegut per la màquina en temps de compilació o en temps d'execució. Els idiomes escrits es poden classificar en dues categories:
- Llenguatges escrits estàticament: En aquest tipus de llenguatge, el tipus de dades d'una variable es coneix en el moment de la compilació, cosa que significa que el programador ha d'especificar el tipus de dades d'una variable en el moment de la seva declaració.
- Llenguatges escrits dinàmicament: Aquests són els idiomes que no requereixen cap tipus de dades predefinit per a cap variable, ja que la mateixa màquina l'interpreta en temps d'execució. En aquests idiomes, els intèrprets assignen el tipus de dades a una variable en temps d'execució en funció del seu valor.
21. Què és un descans, continuar i passar a Python?
El declaració de ruptura s'utilitza per finalitzar el bucle o declaració en què està present. Després d'això, el control passarà a les declaracions que estiguin presents després de la sentència break, si està disponible.
infern de trucada en javascript
Continua també és una instrucció de control de bucle igual que la instrucció break. La instrucció continue és oposada a la de la sentència break, en lloc d'acabar el bucle, obliga a executar la següent iteració del bucle.
Passar significa no realitzar cap operació o, en altres paraules, és un marcador de posició a la instrucció composta, on hauria de quedar un espai en blanc i no s'hi ha d'escriure res.
Numèric: El tipus de dades numèriques a Python representa les dades que tenen un valor numèric. Un valor numèric pot ser un nombre enter, un nombre flotant, un booleà , o fins i tot un nombre complex.
23. Com es fa un nombre en Python?
El mòdul matemàtic de Python inclou un mètode que es pot utilitzar per calcular el sòl d'un nombre.
- pis () El mètode de Python retorna el sòl de x, és a dir, l'enter més gran no més gran que x.
- A més, el mètode ceil(x) a Python retorna un valor màxim de x, és a dir, l'enter més petit més gran o igual que x.
Preguntes d'entrevista de Python intermedi
24. Quina diferència hi ha entre les funcions xrange i range?
range() i xrange() són dues funcions que es podrien utilitzar per repetir un cert nombre de vegades en bucles for a Python. A Python 3, no hi ha xrange, però la funció range es comporta com xrange a Python 2.
- rang () – Això retorna una llista de números creats amb la funció range().
- xrange() – Aquesta funció retorna l'objecte generador que només es pot utilitzar per mostrar números fent un bucle. L'únic rang en particular es mostra sota demanda i, per tant, s'anomena avaluació mandrosa .
25. Què és la comprensió del diccionari? Posa un exemple
La comprensió del diccionari és una construcció de sintaxi per facilitar la creació d'un diccionari basat en l'iterable existent.
Per exemple: my_dict = {i:i+7 per a i dins l'interval (1, 10)}
26. És comprensió tuple? En cas afirmatiu, com, i si no per què?
27. Diferenciar entre llista i tupla?
Analitzem les diferències entre List i Tuple:
Llista
- Les llistes són tipus de dades mutables.
- Les llistes consumeixen més memòria
- La llista és millor per realitzar operacions, com ara la inserció i la supressió.
- La implicació de les iteracions requereix temps
Tuple
- Les tuples són tipus de dades immutables.
- Tuple consumeix menys memòria en comparació amb la llista
- Un tipus de dades Tuple és adequat per accedir als elements
- La implicació de les iteracions és comparativament més ràpida
28. Quina diferència hi ha entre una còpia superficial i una còpia profunda?
La còpia superficial s'utilitza quan es crea un tipus d'instància nou i conserva els valors que es copien, mentre que la còpia profunda emmagatzema els valors que ja s'han copiat.
Una còpia superficial té una execució del programa més ràpida, mentre que una còpia profunda la fa lenta.
29. Quina tècnica d'ordenació utilitzen les funcions sort() i sorted() de Python?
Python utilitza el Tim Sort algorisme per ordenar. És una classificació estable el pitjor cas de la qual és O(N log N). És un algorisme d'ordenació híbrid, derivat de l'ordenació per fusió i l'ordenació per inserció, dissenyat per funcionar bé en molts tipus de dades del món real.
30. Què són els decoradors?
Els decoradors són una eina molt potent i útil a Python, ja que són el canvi específic que fem a la sintaxi de Python per alterar les funcions fàcilment.
algorisme kmp
31. Com depureu un programa Python?
Mitjançant aquesta ordre podem depurar un programa Python:
$ python -m pdb python-script.py>
32. Què són els iteradors a Python?
A Python, els iteradors s'utilitzen per iterar un grup d'elements, contenidors com una llista. Els iteradors són col·leccions d'elements i poden ser una llista, tuples o un diccionari. L'iterador de Python implementa __itr__ i el mètode next() per iterar els elements emmagatzemats. En general, fem servir bucles per iterar sobre les col·leccions (llista, tupla) a Python.
33. Què són els generadors a Python?
A Python, el generador és una manera que especifica com implementar iteradors. És una funció normal excepte que dóna expressió a la funció. No implementa el mètode __itr__ i next() i també redueix altres despeses generals.
Si una funció conté almenys una declaració de rendiment, es converteix en un generador. La paraula clau yield atura l'execució actual desant els seus estats i després es reprèn de la mateixa quan sigui necessari.
34. Python admet l'herència múltiple?
Python admet múltiples herències, a diferència de Java. Les herències múltiples signifiquen que una classe es pot derivar de més d'una classe pare.
35. Què és el polimorfisme en Python?
Polimorfisme significa la capacitat de prendre múltiples formes. Així, per exemple, si la classe pare té un mètode anomenat ABC, la classe fill també pot tenir un mètode amb el mateix nom ABC amb els seus propis paràmetres i variables. Python permet el polimorfisme.
36. Definiu l'encapsulació en Python?
L'encapsulació significa unir el codi i les dades junts. Una classe Python és un exemple d'encapsulació.
38. Com es fa la gestió de la memòria a Python?
Python utilitza el seu espai d'emmagatzematge privat per gestionar la memòria. Bàsicament, tots els objectes i estructures de dades s'emmagatzemen a l'espai d'emmagatzematge privat. Fins i tot el programador no pot accedir a aquest espai privat ja que l'intèrpret s'encarrega d'aquest espai. Python també té un col·lector d'escombraries incorporat, que recicla tota la memòria no utilitzada i allibera la memòria i la posa a disposició de l'espai munt.
39. Com esborrar un fitxer amb Python?
Podem suprimir un fitxer amb Python mitjançant els següents enfocaments:
- os.remove()
- os.unlink()
40. Què és tallar a Python?
Python Slicing és una operació de cadena per extreure una part de la cadena, o alguna part d'una llista. Amb aquest operador, es pot especificar on començar el tall, on finalitzar i especificar el pas. El tall de llista retorna una llista nova de la llista existent.
Syntax: Lst[ Initial : End : IndexJump ]>
41. Què és un espai de noms a Python?
Un espai de noms és un sistema de noms utilitzat per assegurar-se que els noms són únics per evitar conflictes de noms.
Preguntes i respostes de l'entrevista avançada de Python
42. Què és el PIP?
PIP és l'acrònim de Python Installer Package que proporciona una interfície perfecta per instal·lar diversos mòduls de Python. És una eina de línia d'ordres que pot cercar paquets a Internet i instal·lar-los sense cap interacció de l'usuari.
43. Què és una funció zip?
La funció Python zip() retorna un objecte zip, que mapeja un índex similar de diversos contenidors. Pren un iterable, el converteix en un iterador i agrega els elements basats en els iterables passats. Retorna un iterador de tuples.
44. Què són el decapat i el decapatge?
El mòdul Pickle accepta qualsevol objecte de Python i el converteix en una representació de cadena i l'aboca en un fitxer mitjançant la funció dump, aquest procés s'anomena pickling. Mentre que el procés de recuperació d'objectes Python originals de la representació de cadena emmagatzemada s'anomena unpickling.
45. Què és el pedaç de mico a Python?
A Python, el terme pedaç de mico només es refereix a modificacions dinàmiques d'una classe o mòdul en temps d'execució.
# g.py class GeeksClass: def function(self): print 'function()' import m def monkey_function(self): print 'monkey_function()' m.GeeksClass.function = monkey_function obj = m.GeeksClass() obj.function()>
46. Què és __init__() a Python?
Equivalent als constructors en terminologia OOP, __init__ és un mètode reservat a les classes de Python. El mètode __init__ es crida automàticament sempre que s'inicia un objecte nou. Aquest mètode assigna memòria al nou objecte tan bon punt es crea. Aquest mètode també es pot utilitzar per inicialitzar variables.
47. Escriure un codi per mostrar l'hora actual?
import time currenttime= time.localtime(time.time()) print (Current time is, currenttime)>
48. Què són els especificadors d'accés a Python?
Python utilitza el símbol '_' per determinar el control d'accés per a un membre de dades específic o una funció membre d'una classe. Una classe en Python té tres tipus de Modificadors d'accés de Python :
- Modificador d'accés públic: Els membres d'una classe que es declaren públics són fàcilment accessibles des de qualsevol part del programa. Tots els membres de dades i les funcions dels membres d'una classe són públics per defecte.
- Modificador d'accés protegit: Els membres d'una classe que es declaren protegits només són accessibles per a una classe derivada d'aquesta. Tots els membres de dades d'una classe es declaren protegits afegint un sol símbol de guió baix '_' abans dels membres de dades d'aquesta classe.
- Modificador d'accés privat: Els membres d'una classe que es declaren privats només són accessibles dins de la classe, el modificador d'accés privat és el modificador d'accés més segur. Els membres de dades d'una classe es declaren privats afegint un símbol de guió baix doble '__' abans del membre de dades d'aquesta classe.
49. Què són les proves unitàries a Python?
La prova d'unitat és el primer nivell de proves de programari on es posen a prova les parts més petites del programari comprovables. Això s'utilitza per validar que cada unitat del programari funciona segons el disseny. El marc de prova d'unitat és el marc d'estil xUnit de Python. El mètode White Box Testing s'utilitza per a les proves unitàries.
50. Python Global Interpreter Lock (GIL)?
Bloqueig global d'intèrpret de Python (GIL) és un tipus de bloqueig de procés que utilitza Python sempre que s'ocupa de processos. En general, Python només utilitza un fil per executar el conjunt de declaracions escrites. El rendiment del procés d'un sol fil i el procés de diversos fils serà el mateix a Python i això es deu a GIL a Python. No podem aconseguir multithreading a Python perquè tenim un bloqueig d'intèrpret global que restringeix els fils i funciona com un sol fil.
51. Què són les anotacions de funcions a Python?
Anotació de la funció és una característica que us permet afegir metadades als paràmetres de funció i retornar valors. D'aquesta manera, podeu especificar el tipus d'entrada dels paràmetres de la funció i el tipus de retorn del valor que retorna la funció.
Força de neteja de la memòria cau npm
Les anotacions de funcions són expressions de Python arbitràries que s'associen a diverses parts de les funcions. Aquestes expressions s'avaluen en temps de compilació i no tenen vida a l'entorn d'execució de Python. Python no atorga cap significat a aquestes anotacions. Prenen vida quan són interpretats per biblioteques de tercers, per exemple, mypy.
52. Què són els grups d'excepcions a Python?
L'última característica de Python 3.11, Grups d'excepció . L'ExceptionGroup es pot gestionar mitjançant una nova sintaxi excepte*. El símbol * indica que cada clàusula excepte pot gestionar múltiples excepcions.
ExceptionGroup és una col·lecció/grup de diferents tipus d'excepcions. Sense crear Múltiples Excepcions, podem agrupar diferents Excepcions que després podem recuperar una per una sempre que sigui necessari, l'ordre en què s'emmagatzemen les Excepcions al Grup d'Excepcions no importa mentre les cridem.
Python 3 try: raise ExceptionGroup('Example ExceptionGroup', ( TypeError('Example TypeError'), ValueError('Example ValueError'), KeyError('Example KeyError'), AttributeError('Example AttributeError') )) except* TypeError: ... except* ValueError as e: ... except* (KeyError, AttributeError) as e: ...> 53. Què és Python Switch Statement
A partir de la versió 3.10, Python ha implementat una funció de canvi de cas anomenada coincidencia de patrons estructurals. Podeu implementar aquesta funció amb les paraules clau de concordança i majúscules. Tingueu en compte que el símbol de guió baix és el que feu servir per definir un cas predeterminat per a la instrucció switch a Python.
Nota : Abans de Python 3.10, Python no admet declaracions de coincidència.
Python 3 match term: case pattern-1: action-1 case pattern-2: action-2 case pattern-3: action-3 case _: action-default>
54. Què és Walrus Operator?
L'operador de la morsa us permet assignar un valor a una variable dins d'una expressió. Això pot ser útil quan necessiteu utilitzar un valor diverses vegades en un bucle, però no voleu repetir el càlcul.
L'operador Walrus està representat per la sintaxi `:=` i es pot utilitzar en una varietat de contextos, incloent bucles while i sentències if.
Nota: Les versions de Python anteriors a la 3.8 no admeten l'operador Walrus.
Python 3 names = ['Jacob', 'Joe', 'Jim'] if (name := input('Enter a name: ')) in names: print(f'Hello, {name}!') else: print('Name not found.')>