Najpogostejša vprašanja in odgovori za Python Interview (Prenesite PDF)

Kazalo:

Anonim

Pripravili smo najpogostejša vprašanja in odgovore na intervjuje za Python, ki vam bodo pomagali, da se pripravite na vprašanja za intervjuje o Pythonu, ki bi vam jih lahko med intervjujem postavil anketar. Na tem seznamu vprašanj za Python Scripting intervju smo zajeli vsa pogosto zastavljena osnovna in napredna vprašanja za programiranje Python s podrobnimi odgovori, s katerimi boste lažje očistili razgovor za delo.

Pokrili smo skoraj vsa pomembna vprašanja za intervju z Pythonom za sveže in izkušene kandidate, ki vam bodo pomagali pri pripravi na prihajajoči intervju. Ta podroben vodnik vprašanj o kodiranju za Python vam bo pomagal pri iskanju zaposlitvenega razgovora za programiranje v Pythonu.

Naložite vprašanja za intervju z Pythonom v PDF obliki

Python Basic Interview Vprašanja in odgovori za boljše in izkušene

1) Kaj je Python? Kakšne so prednosti uporabe Pythona?

Python je programski jezik s predmeti, moduli, nitmi, izjemami in samodejnim upravljanjem pomnilnika. Prednosti pythonov so, da je enostaven in enostaven, prenosljiv, razširljiv, vgrajen v podatkovno strukturo in je odprtokoden.

2) Kaj je PEP 8?

PEP 8 je konvencija o kodiranju, sklop priporočil o tem, kako napisati kodo Python bolj berljivo.

3) Kaj je luženje in odstranjevanje?

Modul Pickle sprejme kateri koli objekt Python in ga pretvori v nizno predstavitev in ga s pomočjo funkcije dump odvrže v datoteko. Ta postopek se imenuje kisanje. Medtem ko se postopek pridobivanja izvirnih objektov Python iz shranjene predstavitve niza imenuje odstranjevanje.

4) Kako se razlaga Python?

Python jezik je interpretiran jezik. Program Python se izvaja neposredno iz izvorne kode. Izvorno kodo, ki jo napiše programer, pretvori v vmesni jezik, ki se spet prevede v strojni jezik, ki ga je treba izvesti.

5) Kako se v Pythonu upravlja s pomnilnikom?

  • Pomnilnik Pythona upravlja prostor zasebne kopice Pythona. Vsi objekti in podatkovne strukture Pythona se nahajajo na zasebnem kupu. Programer nima dostopa do te zasebne kopice in tolmač skrbi za to zasebno kopico Pythona.
  • Dodelitev prostora kupa Python za objekte Python opravi upravitelj pomnilnika Python. Jedro API omogoča dostop do nekaterih orodij, ki jih programer lahko kodira.
  • Python ima tudi vgrajen zbiralnik smeti, ki reciklira ves neuporabljeni pomnilnik, sprosti pomnilnik in ga da na razpolago v prostoru kupa.

6) Katera orodja pomagajo najti napake ali izvesti statično analizo?

PyChecker je orodje za statično analizo, ki zazna napake v izvorni kodi Pythona in opozori na slog in zapletenost napake. Pylint je drugo orodje, ki preverja, ali modul ustreza kodiranju.

7) Kaj so okrasniki Python?

Dekorater Python je posebna sprememba, ki jo naredimo v sintaksi Python za enostavno spreminjanje funkcij.

8) Kakšna je razlika med seznamom in naborom?

Razlika med seznamom in naborom je v tem, da je seznam spremenljiv, medtem ko nabor ni. Tuple lahko zgostite, na primer kot ključ za slovarje.

9) Kako se argumenti posredujejo po vrednosti ali sklicu?

Vse v Pythonu je objekt in vse spremenljivke vsebujejo sklice na predmete. Referenčne vrednosti so glede na funkcije; posledično ne morete spremeniti vrednosti referenc. Predmete pa lahko spremenite, če je spremenljiv.

10) Kaj so pojmovanja Dict in List?

So sintaksne konstrukcije za lažje ustvarjanje slovarja ali seznama na podlagi obstoječega iterablea.

11) Katere vrste vgrajenega tipa ponuja python?

Obstajajo spremenljivi in ​​nespremenljivi tipi Pythonov, vgrajeni tipi Spremenljivi vgrajeni tipi

  • Seznam
  • Kompleti
  • Slovarji

Nespremenljive vgrajene vrste

  • Strune
  • Tuple
  • Številke

12) Kaj je imenski prostor v Pythonu?

V Pythonu ima vsako uvedeno ime kraj, kjer živi in ​​za katerega je mogoče zasidrati. To je znano kot imenski prostor. Je kot polje, kjer se ime spremenljivke preslika na postavljeni predmet. Kadarkoli spremenljivko poiščete, bo to polje iskano, da dobite ustrezen objekt.

13) Kaj je lambda v Pythonu?

Je anonimna funkcija z enim izrazom, ki se pogosto uporablja kot vgrajena funkcija.

14) Zakaj lambda obrazci v pythonu nimajo stavkov?

Lambda oblika v pythonu nima stavkov, saj se uporablja za izdelavo novega funkcijskega objekta in nato vrnitev med izvajanjem.

15) Kaj je pass v Pythonu?

Pass pomeni, da izjava Python ne deluje, ali z drugimi besedami, je imetnik mesta v sestavljeni izjavi, kjer bi moral ostati prazen prostor in tam ni treba ničesar zapisati.

16) Kaj so v Pythonu iteratorji?

V Pythonu se iteratorji uporabljajo za ponovitev skupine elementov, vsebnikov, kot je seznam.

17) Kaj je unittest v Pythonu?

Enotno preskusno ogrodje v Pythonu je znano kot unittest. Podpira izmenjavo nastavitev, testiranje avtomatizacije, zaustavitev kode za teste, združevanje testov v zbirke itd.

18) V Pythonu, kaj je rezanje?

Mehanizem za izbiro vrste elementov iz vrst zaporedja, kot so seznam, nabor, nizi itd., Je znan kot rezanje.

19) Kaj so generatorji v Pythonu?

Načini izvajanja iteratorjev so znani kot generatorji. To je običajna funkcija, le da daje funkcijo v funkciji.

20) Kaj je docstring v Pythonu?

Niz dokumentacije Pythona je znan kot dokumentni niz, je način dokumentiranja Pythonovih funkcij, modulov in razredov.

21) Kako lahko kopirate predmet v Pythonu?

Če želite kopirati predmet v Pythonu, lahko poskusite copy.copy () ali copy.deepcopy () za splošni primer. Ne morete kopirati vseh predmetov, ampak večino.

22) Kaj je negativni indeks v Pythonu?

Zaporedja Pythona lahko indeksiramo v pozitivnih in negativnih številih. Pri pozitivnem indeksu je 0 prvi indeks, 1 drugi indeks itd. Za negativni indeks je (-1) zadnji indeks, (-2) pa drugi zadnji indeks itd.

23) Kako lahko pretvorite številko v niz?

Za pretvorbo števila v niz uporabite vgrajeno funkcijo str (). Če želite osmiško ali šestnajstiško predstavitev, uporabite vgrajeno funkcijo oct () ali hex ().

24) Kakšna je razlika med Xrange in range?

Xrange vrne objekt xrange, medtem ko obseg vrne seznam in uporablja isti pomnilnik, ne glede na velikost obsega.

25) Kaj sta modul in paket v Pythonu?

V Pythonu je modul način za strukturiranje programa. Vsaka programska datoteka Python je modul, ki uvozi druge module, kot so predmeti in atributi.

Mapa programa Python je paket modulov. Paket ima lahko module ali podmape.

26) Omenite, kakšna so pravila za lokalne in globalne spremenljivke v Pythonu?

Lokalne spremenljivke : Če je spremenljivki kjer koli znotraj telesa funkcije dodeljena nova vrednost, se domneva, da je lokalna.

Globalne spremenljivke : tiste spremenljivke, na katere se sklicuje samo funkcija, so implicitno globalne.

27) Kako lahko delite globalne spremenljivke med moduli?

Če želite deliti globalne spremenljivke med moduli znotraj enega programa, ustvarite poseben modul. Uvozite konfiguracijski modul v vse module vaše aplikacije. Modul bo na voljo kot globalna spremenljivka med moduli.

28) Pojasnite, kako lahko na Unixu naredite izvršljivo izvedbo Python Script?

Če želite narediti skript Python Script v Unixu, morate narediti dve stvari,

  • Način skriptne datoteke mora biti izvedljiv in
  • prva vrstica se mora začeti z # (#! / usr / local / bin / python)

29) Pojasnite, kako izbrisati datoteko v Pythonu?

Z uporabo ukaza os.remove (ime datoteke) ali os.unlink (ime datoteke)

30) Pojasnite, kako lahko v Pythonu ustvarite naključne številke?

Če želite v Pythonu ustvariti naključne številke, morate uvoziti ukaz kot

uvoz naključno

random.random ()

To vrne naključno število s plavajočo vejico v območju [0,1)

31) Pojasnite, kako lahko iz C-ja dostopate do modula, napisanega v Pythonu?

Do modula, napisanega v Pythonu, lahko dostopate iz C po naslednji metodi:

Modul = = PyImport_ImportModule ("");

32) Omenite uporabo operatorja // v Pythonu?

To je talni delilni operater, ki se uporablja za delitev dveh operandov z rezultatom kot količnikom, ki prikazuje samo števke pred decimalno vejico. Na primer, 10 // 5 = 2 in 10.0 // 5.0 = 2.0.

33) Omenite pet prednosti uporabe Pythona?

  • Python obsega ogromno standardno knjižnico za večino internetnih platform, kot so E-pošta, HTML itd.
  • Python ne zahteva eksplicitnega upravljanja pomnilnika, saj tolmač sam dodeli pomnilnik novim spremenljivkam in jih samodejno osvobodi
  • Zagotovite lahko berljivost zaradi uporabe oglatih oklepajev
  • Za začetnike enostaven za učenje
  • Vgrajeni podatkovni tipi prihranijo čas in napor pri programiranju spremenljivk

34) Omenite uporabo funkcije split v Pythonu ?

Uporaba funkcije split v Pythonu je, da z definiranim ločevalnikom loči niz v krajše nize. Prikaže seznam vseh besed v nizu.

35) Pojasnite, kaj je bučka in njene prednosti ?

Flask je spletni mikrookvir za Python, ki temelji na licencirani BSD "Werkzeug, Jinja 2 in dobri nameni". Werkzeug in jingja sta dve njegovi odvisnosti.

Bučka je del mikrookvirja. Kar pomeni, da bo imel malo ali nič odvisnosti od zunanjih knjižnic. Olajša okvir, medtem ko je posodobitev malo odvisna in manj napak v varnosti.

36) Omenite, kakšna je razlika med Django, Pyramid in Flask?

Bučka je "mikrookvir", zgrajena predvsem za majhne aplikacije z enostavnejšimi zahtevami. V bučki vam ni treba uporabljati zunanjih knjižnic. Bučka je pripravljena za uporabo.

Piramide so zgrajene za večje aplikacije. Omogoča prilagodljivost in omogoča razvijalcem uporabo pravih orodij za njihov projekt. Razvijalec lahko izbere bazo podatkov, strukturo URL-jev, slog predloge in še več. Piramida je težko nastavljiva.

Tako kot Pyramid se tudi Django lahko uporablja za večje aplikacije. Vključuje ORM.

37) Omenite, kaj je Flask-WTF in kakšne so njihove lastnosti?

Flask-WTF ponuja preprosto integracijo z WTForms. Značilnosti vključujejo za Flask WTF are

  • Integracija z wtformami
  • Zaščiten obrazec z žetonom csrf
  • Globalna zaščita CSRF
  • Integracija internacionalizacije
  • Recaptcha podpora
  • Nalaganje datotek, ki deluje s prenosom bučke

38) Pojasnite, kakšen je običajni način delovanja skripta Flask?

Običajni način delovanja skripte za bučko je

  • To bi morala biti pot uvoza za vašo aplikacijo
  • Ali pot do datoteke Python

39) Pojasnite, kako lahko dostopate do sej v Flasku?

Seja vam v bistvu omogoča, da si zapomnite informacije iz ene zahteve v drugo. V bučki uporablja podpisan piškotek, da si lahko uporabnik ogleda vsebino seje in jo spremeni. Uporabnik lahko sejo spremeni, če ima le skrivni ključ Flask.secret_key.

40) Ali je Flask model MVC in če da, navedite primer, ki prikazuje vzorec MVC za vašo aplikacijo?

V bistvu je Flask minimalistični okvir, ki se obnaša enako kot okvir MVC. Torej je MVC popolnoma primeren za bučko, vzorec za MVC pa bomo upoštevali za naslednji primer

iz bučke uvozna bučka

app = bučka (_ime_)

@ app.route ("/")

Def hello ():

vrni "Hello World"

app.run (odpravljanje napak = True)

V tej kodi je vaš,

  • Konfiguracijski del bo

iz bučke uvozna bučka

app = bučka (_ime_)

  • Pogled del bo

@ app.route ("/")

Def hello ():

vrni "Hello World"

  • Medtem ko model ali glavni del bo

app.run (odpravljanje napak = True)

41) Pojasnite povezavo z bazo podatkov v Python Flask?

Bučka podpira uporabo baz podatkov (RDBS). Tak sistem zahteva izdelavo sheme, ki zahteva napeljavo datoteke shema.sql v ukaz sqlite3. Torej morate namestiti ukaz sqlite3, če želite ustvariti ali zagnati bazo podatkov v Flasku.

Bučka omogoča zahtevo po zbirki podatkov na tri načine

  • before_request (): Pokličejo se pred zahtevo in ne posredujejo nobenih argumentov
  • after_request (): Pokličejo se po zahtevi in ​​posredujejo odgovor, ki bo poslan stranki
  • teardown_request (): Pokličejo se v primeru, ko se vzpostavi izjema in odziv ni zagotovljen. Pokličejo se po izdelavi odziva. Zahteve ne smejo spreminjati in njihove vrednosti se prezrejo.

42) Imate več strežnikov Memcache, v katerih se izvaja Python, pri katerem eden od strežnikov memcacher odpove in ima vaše podatke, ali bo kdaj poskusil dobiti ključne podatke s tega neuspešnega strežnika?

Podatki v neuspelem strežniku se ne bodo odstranili, vendar obstaja možnost samodejne okvare, ki jo lahko konfigurirate za več vozlišč. Izpad lahko sprožite med kakršnimi koli napakami na ravni vtičnice ali Memcached strežnika in ne med običajnimi napakami odjemalca, kot je dodajanje obstoječega ključa itd.

43) Pojasnite, kako lahko zmanjšate izpad strežnika Memcached v svojem razvoju Pythona?

  • Ko en primerek ne uspe, se več zruši, to bo povečalo obremenitev strežnika baze podatkov, ko se izgubljeni podatki znova naložijo, ko odjemalec poda zahtevo. Da bi se temu izognili, bo vaša koda napisana tako, da bo zmanjšala odtis predpomnilnika, potem pa bo pustila minimalen učinek
  • Drug način je, da na novem računalniku prikažete primerek Memcached z uporabo naslova IP izgubljenih računalnikov
  • Koda je še ena možnost za zmanjšanje izpada strežnika, saj vam omogoča, da z minimalnim delom spremenite seznam strežnikov Memcached
  • Nastavitev vrednosti časovne omejitve je še ena možnost, ki jo nekateri odjemalci Memcached izvajajo za izpad strežnika Memcached. Ko vaš strežnik Memcached pade, bo odjemalec še naprej poskušal poslati zahtevo, dokler ne bo dosežena omejitev časovne omejitve

44) Pojasnite, kaj je dogpile učinek? Kako lahko preprečite ta učinek?

Dogpile učinek se nanaša na dogodek, ko predpomnilnik poteče, spletna mesta pa so prizadeta zaradi večkratnih zahtev odjemalca hkrati. Ta učinek je mogoče preprečiti z uporabo semaforske ključavnice. V tem sistemu, ko vrednost poteče, prvi postopek pridobi ključavnico in začne ustvarjati novo vrednost.

45) Pojasnite, kako se Memcached ne sme uporabljati v vašem projektu Python?

  • Pogosta napačna uporaba je, da se uporablja kot shramba podatkov in ne kot predpomnilnik
  • Nikoli ne uporabljajte Memcached kot edinega vira informacij, ki jih potrebujete za zagon aplikacije. Podatki bi morali biti vedno na voljo tudi iz drugega vira
  • Memcached je samo ključ ali shramba vrednosti in ne more izvajati poizvedb po podatkih ali iterirati po vsebini, da izvleče informacije
  • Memcached ne ponuja nobene oblike zaščite niti pri šifriranju niti pri preverjanju pristnosti