Întrebări și răspunsuri de top pentru interviul Python (Descărcați PDF)

Cuprins:

Anonim

Am pregătit cele mai frecvente întrebări și răspunsuri pentru interviul Python, care vă vor ajuta să vă pregătiți pentru întrebările interviului pe Python pe care vi le poate pune un intervievator în timpul interviului. În această listă de întrebări de interviu Python Scripting, am acoperit toate întrebările de bază și avansate de programare Python frecvente cu răspunsuri detaliate pentru a vă ajuta să ștergeți cu ușurință interviul de angajare.

Am acoperit aproape toate întrebările importante ale interviului Python pentru începătorii și candidații cu experiență pentru a vă ajuta să vă pregătiți pentru următorul interviu. Acest ghid detaliat al întrebărilor de interviu de codare Python vă va ajuta să vă rupeți interviul de angajare pentru programarea Python.

Descărcați întrebările pentru interviul Python PDF

Întrebări și răspunsuri de bază ale interviului Python pentru începători și cu experiență

1) Ce este Python? Care sunt beneficiile utilizării Python?

Python este un limbaj de programare cu obiecte, module, fire, excepții și gestionarea automată a memoriei. Avantajele pythonilor sunt că este simplă și ușoară, portabilă, extensibilă, structură de date încorporată și este o sursă deschisă.

2) Ce este PEP 8?

PEP 8 este o convenție de codificare, un set de recomandări, despre cum să scrieți codul Python mai ușor de citit.

3) Ce este decaparea și decojirea?

Modulul Pickle acceptă orice obiect Python și îl convertește într-o reprezentare șir și îl aruncă într-un fișier utilizând funcția dump, acest proces se numește pickling. În timp ce procesul de recuperare a obiectelor Python originale din reprezentarea șirului stocat se numește unpickling.

4) Cum este interpretat Python?

Limbajul Python este un limbaj interpretat. Programul Python rulează direct din codul sursă. Convertește codul sursă scris de programator într-un limbaj intermediar, care este tradus din nou în limbajul mașinii care trebuie executat.

5) Cum este gestionată memoria în Python?

  • Memoria Python este gestionată de spațiul privat Python. Toate obiectele și structurile de date Python sunt situate într-o grămadă privată. Programatorul nu are acces la acest heap privat și interpretul se ocupă de acest heap privat Python.
  • Alocarea spațiului heap Python pentru obiectele Python se face de către managerul de memorie Python. API-ul principal oferă acces la unele instrumente pentru ca programatorul să codeze.
  • Python are, de asemenea, un colector de gunoi încorporat, care reciclează toată memoria neutilizată și eliberează memoria și o face disponibilă pentru spațiul heap.

6) Care sunt instrumentele care vă ajută să găsiți erori sau să efectuați analize statice?

PyChecker este un instrument de analiză statică care detectează erorile din codul sursă Python și avertizează despre stilul și complexitatea erorii. Pylint este un alt instrument care verifică dacă modulul respectă standardul de codare.

7) Ce sunt decoratorii Python?

Un decorator Python este o modificare specifică pe care o facem în sintaxa Python pentru a modifica funcțiile cu ușurință.

8) Care este diferența dintre listă și tuplu?

Diferența dintre listă și tuplu este că lista este modificabilă, în timp ce tuplul nu este. Tuple poate fi hashed pentru, de exemplu, ca o cheie pentru dicționare.

9) Cum sunt argumentele transmise prin valoare sau prin referință?

Totul din Python este un obiect și toate variabilele conțin referințe la obiecte. Valorile referințelor sunt în funcție de funcții; ca urmare, nu puteți modifica valoarea referințelor. Cu toate acestea, puteți schimba obiectele dacă este mutabil.

10) Ce sunt înțelegerile Dict și List?

Acestea sunt construcții de sintaxă pentru a ușura crearea unui dicționar sau a unei liste bazate pe iterabile existente.

11) Care sunt tipurile încorporate pe care le oferă python?

Există tipuri mutabile și imuabile de Pythons încorporate în tipuri Tipuri încorporabile mutabile

  • Listă
  • Seturi
  • Dicționare

Tipuri încorporabile imuabile

  • Siruri de caractere
  • Tuples
  • Numere

12) Ce este spațiul de nume în Python?

În Python, fiecare nume introdus are un loc în care trăiește și poate fi conectat. Acest lucru este cunoscut sub numele de spațiu de nume. Este ca o cutie în care un nume de variabilă este mapat la obiectul plasat. Ori de câte ori variabila este căutată, această casetă va fi căutată, pentru a obține obiectul corespunzător.

13) Ce este lambda în Python?

Este o singură expresie funcție anonimă folosită adesea ca funcție inline.

14) De ce formele lambda din python nu au declarații?

O formă lambda în python nu are instrucțiuni, deoarece este utilizată pentru a crea un nou obiect funcțional și apoi pentru a le returna la runtime.

15) Ce este trecerea în Python?

Pass înseamnă, instrucțiune Python fără operație sau, cu alte cuvinte, este un deținător de poziție în instrucțiunea compusă, unde ar trebui să rămână un gol și nu trebuie scris nimic acolo.

16) În Python, ce sunt iteratorii?

În Python, iteratorii sunt utilizați pentru a itera un grup de elemente, containere precum listă.

17) Ce este inatest în Python?

Un cadru de testare unitară în Python este cunoscut ca unittest. Suportă partajarea setărilor, testarea automatizării, codul de oprire pentru teste, agregarea testelor în colecții etc.

18) În Python ce este felierea?

Un mecanism pentru a selecta o gamă de articole din tipuri de secvențe precum listă, tuplu, șiruri etc. este cunoscut sub numele de feliere.

19) Ce sunt generatoarele din Python?

Modul de implementare a iteratorilor este cunoscut sub numele de generatori. Este o funcție normală, cu excepția faptului că dă expresie în funcție.

20) Ce este docstring în Python?

Un șir de documentare Python este cunoscut sub numele de docstring, este un mod de a documenta funcțiile, modulele și clasele Python.

21) Cum puteți copia un obiect în Python?

Pentru a copia un obiect în Python, puteți încerca copy.copy () sau copy.deepcopy () pentru cazul general. Nu puteți copia toate obiectele, dar cele mai multe dintre ele.

22) Ce este indicele negativ în Python?

Secvențele Python pot fi indexate în numere pozitive și negative. Pentru indicele pozitiv, 0 este primul index, 1 este al doilea index și așa mai departe. Pentru indicele negativ, (-1) este ultimul index și (-2) este al doilea ultim index și așa mai departe.

23) Cum puteți converti un număr într-un șir?

Pentru a converti un număr într-un șir, utilizați funcția încorporată str (). Dacă doriți o reprezentare octală sau hexazecimală, utilizați funcția încorporată oct () sau hex ().

24) Care este diferența dintre Xrange și interval?

Xrange returnează obiectul xrange în timp ce intervalul returnează lista și folosește aceeași memorie și indiferent de dimensiunea intervalului.

25) Ce este modulul și pachetul în Python?

În Python, modulul este modul de structurare a programului. Fiecare fișier de program Python este un modul, care importă alte module precum obiecte și atribute.

Dosarul programului Python este un pachet de module. Un pachet poate avea module sau subfoldere.

26) Menționați care sunt regulile pentru variabilele locale și globale din Python?

Variabile locale : dacă unei variabile i se atribuie o nouă valoare oriunde în corpul funcției, se presupune că este locală.

Variabile globale : acele variabile la care se face referire doar în interiorul unei funcții sunt implicit globale.

27) Cum puteți partaja variabile globale între module?

Pentru a partaja variabile globale între module dintr-un singur program, creați un modul special. Importați modulul de configurare în toate modulele aplicației dvs. Modulul va fi disponibil ca variabilă globală între module.

28) Explicați cum puteți face un Python Script executabil pe Unix?

Pentru a face un Python Script executabil pe Unix, trebuie să faceți două lucruri,

  • Modul fișierului script trebuie să fie executabil și
  • prima linie trebuie să înceapă cu # (#! / usr / local / bin / python)

29) Explicați cum să ștergeți un fișier în Python?

Utilizând o comandă os.remove (nume fișier) sau os.unlink (nume fișier)

30) Explicați cum puteți genera numere aleatorii în Python?

Pentru a genera numere aleatorii în Python, trebuie să importați comanda ca

import aleatoriu

random.random ()

Aceasta returnează un număr aleatoriu în virgulă mobilă în intervalul [0,1)

31) Explicați cum puteți accesa un modul scris în Python din C?

Puteți accesa un modul scris în Python din C urmând metoda,

Module = = PyImport_ImportModule ("");

32) Menționează utilizarea // operatorului în Python?

Este un operator de divizare etaj, care este utilizat pentru împărțirea a doi operanzi cu rezultatul ca coeficient care arată doar cifre înainte de punctul zecimal. De exemplu, 10 // 5 = 2 și 10.0 // 5.0 = 2.0.

33) Menționează cinci beneficii ale utilizării Python?

  • Python cuprinde o imensă bibliotecă standard pentru majoritatea platformelor Internet, cum ar fi e-mail, HTML etc.
  • Python nu necesită gestionarea explicită a memoriei, deoarece interpretul însuși alocă memoria noilor variabile și le eliberează automat
  • Oferiți o lizibilitate ușoară datorită utilizării parantezelor pătrate
  • Ușor de învățat pentru începători
  • Având tipurile de date încorporate se economisește timp și efort de programare din declararea variabilelor

34) Menționează utilizarea funcției split în Python ?

Utilizarea funcției de împărțire în Python este că rupe un șir în șiruri mai scurte folosind separatorul definit. Oferă o listă a tuturor cuvintelor prezente în șir.

35) Explicați ce este Flask și beneficiile sale ?

Flask este un micro-cadru web pentru Python bazat pe licența BSD „Werkzeug, Jinja 2 și intenții bune”. Werkzeug și jingja sunt două dintre dependențele sale.

Balonul face parte din micro-cadru. Ceea ce înseamnă că va avea dependențe mici sau deloc de bibliotecile externe. Face ca cadrul să fie ușor în timp ce există puțină dependență de actualizare și mai puține erori de securitate.

36) Menționează care este diferența dintre Django, Pyramid și Flask?

Flask este un „microframework” construit în primul rând pentru o aplicație mică cu cerințe mai simple. În balon, nu trebuie să utilizați biblioteci externe. Balonul este gata de utilizare.

Piramida este construită pentru aplicații mai mari. Oferă flexibilitate și permite dezvoltatorului să utilizeze instrumentele potrivite pentru proiectul său. Dezvoltatorul poate alege baza de date, structura URL-ului, stilul de șablonare și multe altele. Piramida este greu configurabilă.

La fel ca Pyramid, Django poate fi folosit și pentru aplicații mai mari. Include un ORM.

37) Menționați ce este Flask-WTF și care sunt caracteristicile lor?

Flask-WTF oferă o integrare simplă cu WTForms. Caracteristicile includ pentru Flask WTF sunt

  • Integrare cu wtforms
  • Formular securizat cu jeton CSRF
  • Protecție CSRF globală
  • Integrarea internaționalizării
  • Recaptcha suport
  • Încărcare fișier care funcționează cu încărcări în flacon

38) Explicați care este modalitatea obișnuită de a funcționa scriptul Flask?

Modul obișnuit de a funcționa scriptul balonului este

  • Fie ar trebui să fie calea de import pentru aplicația dvs.
  • Sau calea către un fișier Python

39) Explicați cum puteți accesa sesiunile în Flask?

O sesiune vă permite practic să vă amintiți informații de la o cerere la alta. Într-un balon, folosește un cookie semnat, astfel încât utilizatorul să poată privi conținutul sesiunii și să îl modifice. Utilizatorul poate modifica sesiunea doar dacă are cheia secretă Flask.secret_key.

40) Este Flask un model MVC și dacă da dați un exemplu care arată modelul MVC pentru aplicația dvs.?

Practic, Flask este un cadru minimalist care se comportă la fel ca cadrul MVC. Deci MVC se potrivește perfect pentru Flask, iar modelul pentru MVC îl vom lua în considerare pentru exemplul următor

din flacon import Flacon

app = Flask (_name_)

@ app.route ("/")

Bună ziua ():

returnează „Hello World”

app.run (depanare = Adevărat)

În acest cod,

  • Partea de configurare va fi

din flacon import Flacon

app = Flask (_name_)

  • Partea de vizualizare va fi

@ app.route ("/")

Bună ziua ():

returnează „Hello World”

  • În timp ce modelul sau partea principală va fi

app.run (depanare = Adevărat)

41) Explicați conexiunea la baza de date în Python Flask?

Flask acceptă aplicația bazată pe baze de date (RDBS). Un astfel de sistem necesită crearea unei scheme, care necesită canalizarea fișierului shema.sql într-o comandă sqlite3. Deci, trebuie să instalați comanda sqlite3 pentru a crea sau iniția baza de date în Flask.

Flask permite să solicitați baza de date în trei moduri

  • before_request (): Sunt chemate înainte de o cerere și nu transmit niciun argument
  • after_request (): Sunt chemate după o cerere și transmit răspunsul care va fi trimis clientului
  • teardown_request (): sunt chemate în situația în care excepția este ridicată și răspunsul nu este garantat. Acestea sunt chemate după ce răspunsul a fost construit. Nu li se permite să modifice cererea, iar valorile lor sunt ignorate.

42) Aveți mai multe servere Memcache care rulează Python, în care unul dintre serverele memcacher eșuează și are datele dvs., va încerca vreodată să obțină date cheie de la acel server eșuat?

Datele de pe serverul eșuat nu vor fi eliminate, dar există o prevedere pentru eșecul automat, pe care o puteți configura pentru mai multe noduri. Eșecul poate fi declanșat în timpul oricărui tip de eroare de socket sau de server Memcached și nu în timpul erorilor normale ale clientului, cum ar fi adăugarea unei chei existente etc.

43) Explicați cum puteți minimiza întreruperile serverului Memcached în Python Development?

  • Când o instanță eșuează, mai multe dintre ele scad, acest lucru va pune o încărcare mai mare pe serverul bazei de date atunci când datele pierdute sunt reîncărcate în timp ce clientul face o cerere. Pentru a evita acest lucru, dacă codul dvs. a fost scris pentru a minimiza amprentele cache, atunci acesta va lăsa un impact minim
  • O altă modalitate este de a afișa o instanță de Memcached pe o mașină nouă folosind adresa IP a mașinilor pierdute
  • Codul este o altă opțiune pentru a minimiza întreruperile serverului, deoarece vă oferă libertatea de a schimba lista serverelor Memcached cu o muncă minimă
  • Setarea valorii de expirare este o altă opțiune pe care unii clienți Memcached o implementează pentru întreruperea serverului Memcached. Când serverul dvs. Memcached cade, clientul va încerca în continuare să trimită o cerere până la atingerea limitei de expirare

44) Explicați ce este efectul Dogpile? Cum puteți preveni acest efect?

Efectul Dogpile se referă la evenimentul în care expiră memoria cache, iar site-urile web sunt afectate de solicitările multiple făcute de client în același timp. Acest efect poate fi prevenit prin utilizarea blocării semaforului. În acest sistem, când valoarea expiră, primul proces dobândește blocarea și începe să genereze o valoare nouă.

45) Explicați cum Memcached nu trebuie utilizat în proiectul dvs. Python?

  • Utilizarea abuzivă comună a Memcached este utilizarea acestuia ca un magazin de date și nu ca o memorie cache
  • Nu utilizați niciodată Memcached ca singură sursă de informații de care aveți nevoie pentru a rula aplicația. Datele ar trebui să fie întotdeauna disponibile și prin altă sursă
  • Memcached este doar o cheie sau un magazin de valori și nu poate efectua interogări peste date sau itera pe conținut pentru a extrage informații
  • Memcached nu oferă nicio formă de securitate nici în criptare, nici în autentificare