Populiariausi „Python“ interviu klausimai ir atsakymai (atsisiųsti PDF)

Turinys:

Anonim

Parengėme dažniausiai užduodamus „Python“ interviu klausimus ir atsakymus, kurie padės jums pasirengti „Python“ interviu klausimams, kuriuos interviu gali užduoti jūsų interviu metu. Šiame „Python Scripting“ interviu klausimų sąraše apėmėme visus dažniausiai užduodamus pagrindinius ir išplėstinius „Python“ programavimo klausimus su išsamiais atsakymais, kurie padės lengvai išvalyti darbo pokalbį.

Mes padėjome beveik visus svarbius „Python“ interviu klausimus naujokams ir patyrusiems kandidatams, kurie padės jums pasirengti būsimam interviu. Šis išsamus „Python“ kodavimo interviu klausimų vadovas padės jums išspręsti „Python“ programavimo darbo pokalbį.

Atsisiųskite „Python“ interviu klausimus PDF

„Python“ pagrindiniai interviu klausimai ir atsakymai naujokams ir patyrusiems

1) Kas yra „Python“? Kokie yra „Python“ naudojimo pranašumai?

„Python“ yra programavimo kalba su objektais, moduliais, gijomis, išimtimis ir automatiniu atminties valdymu. Pitonų privalumai yra tai, kad tai paprasta ir lengva, nešiojama, išplečiama, įmontuota duomenų struktūra ir tai yra atviras šaltinis.

2) Kas yra PEP 8?

PEP 8 yra kodavimo sutartis, rekomendacijų rinkinys, kaip lengviau skaityti parašyti „Python“ kodą.

3) Kas yra marinavimas ir nemarinavimas?

„Pickle“ modulis priima bet kurį „Python“ objektą ir paverčia jį eilutės atvaizdu ir išmeta į failą naudodamas „dump“ funkciją. Šis procesas vadinamas rauginimu. Nors originalių „Python“ objektų gavimo iš saugomos eilutės atvaizdavimo procesas vadinamas neišrinkimu.

4) Kaip aiškinamas „Python“?

Python kalba yra aiškinama kalba. „Python“ programa veikia tiesiai iš šaltinio kodo. Jis konvertuoja programuotojo parašytą šaltinio kodą į tarpinę kalbą, kuri vėl išverčiama į mašininę kalbą, kurią reikia vykdyti.

5) Kaip valdoma atmintis „Python“?

  • „Python“ atmintį tvarko „Python“ asmeninė krūva. Visi „Python“ objektai ir duomenų struktūros yra privačiame kaupe. Programuotojas neturi prieigos prie šio privataus kaupo, o vertėjas rūpinasi šiuo asmeniniu „Python“ kaupu.
  • „Python“ kaupo erdvės paskirstymą „Python“ objektams atlieka „Python“ atminties tvarkyklė. Pagrindinė API suteikia programuotojui prieigą prie kai kurių įrankių koduoti.
  • „Python“ taip pat turi įmontuotą šiukšlių surinktuvą, kuris perdirba visą nenaudojamą atmintį ir atlaisvina atmintį bei suteikia jai galimybę naudotis kaupu.

6) Kokios priemonės padeda rasti klaidas ar atlikti statinę analizę?

„PyChecker“ yra statinės analizės įrankis, kuris aptinka „Python“ šaltinio kodo klaidas ir įspėja apie klaidos stilių ir sudėtingumą. „Pylint“ yra dar vienas įrankis, kuris patikrina, ar modulis atitinka kodavimo standartą.

7) Kas yra „Python“ dekoratoriai?

„Python“ dekoratorius yra konkretus pakeitimas, kurį atliekame „Python“ sintaksėje, kad lengvai pakeistume funkcijas.

8) Koks skirtumas tarp sąrašo ir paketo?

Skirtumas tarp sąrašo ir „tuple“ yra tas, kad sąrašas yra kintamas, o „tuple“ ne. Tuple'ą galima maišyti, pvz., Kaip raktinį žodynus.

9) Kaip argumentai perduodami pagal vertę ar nuorodą?

„Python“ viskas yra objektas, o visi kintamieji turi nuorodas į objektus. Referencinės vertės yra nustatytos pagal funkcijas; todėl negalite pakeisti nuorodų vertės. Tačiau objektus galite pakeisti, jei jie yra kintami.

10) Kas yra „Dict and List“ supratimas?

Jie yra sintaksės konstrukcijos, padedančios sukurti žodyną ar sąrašą, pagrįstą esamais iteruojamaisiais elementais.

11) Kokį integruotą tipą teikia pitonas?

Yra kintamų ir nekintamų pitonų tipų, pastatytų tipuose

  • Sąrašas
  • Rinkiniai
  • Žodynai

Nekintami įmontuoti tipai

  • Stygos
  • Tuples
  • Skaičiai

12) Kas yra „Python“ vardų sritis?

„Python“ kiekvienas įvardytas vardas turi savo gyvenamąją vietą ir gali būti užklijuotas. Tai žinoma kaip vardų sritis. Tai yra tarsi langelis, kuriame kintamasis vardas priskiriamas prie įdėto objekto. Kai ieškoma kintamojo, šiame laukelyje bus ieškoma, kad gautumėte atitinkamą objektą.

13) Kas yra lambda „Python“?

Tai yra vienos išraiškos anoniminė funkcija, dažnai naudojama kaip tiesioginė funkcija.

14) Kodėl „lambda“ formos pitone neturi teiginių?

„Lambda“ forma „python“ neturi sakinių, nes ji naudojama norint sukurti naują funkcijos objektą ir tada juos grąžinti vykdymo metu.

15) Kas yra „Python“ leidimas?

„Pass“ reiškia, kad „Python“ sakinys neveikia, arba, kitaip tariant, jis yra vietos turėtojas sudėtiniame sakinyje, kuriame turėtų likti tuščia vieta ir nieko ten nereikia rašyti.

16) Kas yra „Python“ kartotojai?

„Python“ versijoje iteratoriai naudojami iteruoti elementų grupę, sudėtinius rodinius, pavyzdžiui, sąrašą.

17) Kas „Python“ yra vieningiausia?

„Python“ vieneto testavimo sistema yra žinoma kaip „unittest“. Tai palaiko nustatymų dalijimąsi, automatikos testavimą, testų išjungimo kodą, bandymų sujungimą į kolekcijas ir kt.

18) Kas yra „Python“ pjaustymas?

Elementų diapazono parinkimo iš sekos tipų, tokių kaip sąrašas, paketas, eilutės ir kt., Mechanizmas yra žinomas kaip pjaustymas.

19) Kas yra „Python“ generatoriai?

Iteratorių diegimo būdas yra žinomas kaip generatoriai. Tai yra įprasta funkcija, išskyrus tai, kad ji suteikia funkcijos išraišką.

20) Kas yra docstringas „Python“?

„Python“ dokumentacijos eilutė yra žinoma kaip „docstring“, tai yra „Python“ funkcijų, modulių ir klasių dokumentavimo būdas.

21) Kaip galite nukopijuoti objektą „Python“?

Norėdami nukopijuoti objektą „Python“, galite pabandyti copy.copy () arba copy.deepcopy () bendram atvejui. Negalite nukopijuoti visų objektų, bet daugumos jų.

22) Kas yra neigiamas „Python“ indeksas?

Python sekos gali būti indekso teigiami ir neigiami skaičiai. Teigiamo indekso atveju 0 yra pirmasis indeksas, 1 yra antrasis indeksas ir pan. Neigiamo indekso atveju (-1) yra paskutinis indeksas, o (-2) yra antras paskutinis indeksas ir pan.

23) Kaip galite konvertuoti skaičių į eilutę?

Norėdami konvertuoti skaičių į eilutę, naudokite integruotą funkciją str (). Jei norite pateikti aštuntąjį arba šešioliktainį vaizdą, naudokite integruotą funkciją „oct“ () arba „hex“ ().

24) Kuo skiriasi „Xrange“ ir diapazonas?

„Xrange“ grąžina objektą „xrange“, o „range“ - sąrašą ir naudoja tą pačią atmintį, kad ir koks būtų diapazono dydis.

25) Kas yra „Python“ modulis ir paketas?

„Python“ modulis yra programos struktūrizavimo būdas. Kiekvienas „Python“ programos failas yra modulis, kuris importuoja kitus modulius, pvz., Objektus ir atributus.

„Python“ programos aplankas yra modulių paketas. Paketas gali turėti modulius arba poaplankius.

26) Paminėkite, kokios yra „Python“ vietinių ir visuotinių kintamųjų taisyklės?

Lokalieji kintamieji : Jei kintamajam priskiriama nauja reikšmė bet kurioje funkcijos kūno vietoje, manoma, kad jis yra lokalus.

Visuotiniai kintamieji : kintamieji, į kuriuos nurodoma tik funkcijos viduje, yra netiesiogiai globalūs.

27) Kaip galite dalytis visuotiniais kintamaisiais moduliuose?

Norėdami bendrai naudoti kintamuosius visuose moduliuose vienoje programoje, sukurkite specialų modulį. Importuokite konfigūracijos modulį į visus savo programos modulius. Modulis bus prieinamas kaip visuotinis kintamasis visuose moduliuose.

28) Paaiškinkite, kaip galite sukurti „Python“ scenarijų vykdomąjį „Unix“?

Jei norite, kad „Pyx Script“ būtų vykdoma „Unix“, turite atlikti du veiksmus:

  • Scenarijaus failo režimas turi būti vykdomas ir
  • pirmoji eilutė turi prasidėti # (#! / usr / local / bin / python)

29) Paaiškinkite, kaip ištrinti failą „Python“?

Naudojant komandą os.remove (failo pavadinimas) arba os.unlink (failo pavadinimas)

30) Paaiškinkite, kaip galite generuoti atsitiktinius skaičius „Python“?

Norėdami sukurti atsitiktinius skaičius „Python“, turite importuoti komandą kaip

importuoti atsitiktinai

random.random ()

Tai pateikia atsitiktinio slankiojo kablelio skaičių diapazone [0,1)

31) Paaiškinkite, kaip iš „C“ galite pasiekti „Python“ parašytą modulį?

Galite pasiekti Python parašytą modulį iš C naudodami šį metodą,

Modulis = = PyImport_ImportModule ("");

32) Paminėkite // operatoriaus naudojimą „Python“?

Tai „Floor Divisionoperator“, naudojamas dalinant du operandus, o rezultatas yra daliklis, rodantis tik skaitmenis prieš kablelį. Pvz., 10 // 5 = 2 ir 10,0 // 5,0 = 2,0.

33) Paminėkite penkis „Python“ naudojimo pranašumus?

  • „Python“ sudaro didžiulė standartinė biblioteka daugumai interneto platformų, tokių kaip el. Paštas, HTML ir kt.
  • „Python“ nereikia aiškaus atminties valdymo, nes vertėjas pats paskirsto atmintį naujiems kintamiesiems ir automatiškai juos atlaisvina
  • Užtikrinkite lengvą skaitomumą dėl laužtinių skliaustų naudojimo
  • Lengvai išmokstama pradedantiesiems
  • Turėdami įmontuotus duomenų tipus, sutaupysite programavimo laiko ir pastangų deklaruodami kintamuosius

34) Paminėkite „split“ funkcijos naudojimą „Python“ ?

„Python“ padalijimo funkcijos naudojimas yra tas, kad jis padalija eilutę į trumpesnes eilutes naudodamas apibrėžtą separatorių. Pateikiamas visų eilutėje esančių žodžių sąrašas.

35) Paaiškinkite, kas yra kolba ir jos nauda ?

„Flask“ yra internetinė „Python“ pagrindų sistema, pagrįsta „Werkzeug, Jinja 2 ir gerų ketinimų“ BSD licencija. Werkzeugas ir Jingja yra dvi jo priklausomybės.

Kolba yra mikroreguliacijos dalis. Tai reiškia, kad jis priklausys nuo išorinių bibliotekų. Tai palengvina sistemą, nors yra nedaug priklausomybės nuo atnaujinimo ir mažiau saugos klaidų.

36) Paminėkite, kuo skiriasi Django, Piramidė ir Kolba?

Kolba yra „mikrorėmas“, pirmiausia sukurtas mažoms programoms, kuriai taikomi paprastesni reikalavimai. Kolboje nereikia naudoti išorinių bibliotekų. Kolba yra paruošta naudoti.

Piramidės yra skirtos didesnėms programoms. Tai suteikia lankstumo ir leidžia kūrėjui naudoti tinkamus įrankius savo projektui. Kūrėjas gali pasirinkti duomenų bazę, URL struktūrą, šablonų stilių ir dar daugiau. Piramidė yra sunkiai konfigūruojama.

Kaip ir „Pyramid“, „Django“ taip pat gali būti naudojamas didesnėms programoms. Tai apima ORM.

37) Paminėkite, kas yra „Flask-WTF“ ir kokie yra jų bruožai?

„Flask-WTF“ siūlo paprastą integraciją su „WTForms“. Flask WTF savybės yra

  • Integracija su wtformomis
  • Saugi forma su csrf žetonu
  • Visuotinė CSRF apsauga
  • Internacionalizacijos integracija
  • „Recaptcha“ palaikymas
  • Failų įkėlimas, kuris veikia su kolbos įkėlimais

38) Paaiškinkite, koks yra „Flask“ scenarijaus įprastas veikimo būdas?

Kolbos scenarijaus įprastas veikimo būdas yra

  • Arba tai turėtų būti jūsų programos importavimo kelias
  • Arba kelias į „Python“ failą

39) Paaiškinkite, kaip galite pasiekti sesijas kolboje?

Iš esmės sesija leidžia prisiminti informaciją nuo vienos užklausos iki kitos. Kolboje jis naudoja pasirašytą slapuką, kad vartotojas galėtų peržiūrėti sesijos turinį ir modifikuoti. Vartotojas gali modifikuoti seansą, jei tik jis turi slaptą raktą „Flask.secret_key“.

40) Ar kolba yra MVC modelis ir jei taip, pateikite pavyzdį, rodantį jūsų programos MVC modelį?

Iš esmės „Flask“ yra minimalistinė sistema, kuri elgiasi taip pat, kaip ir „MVC“ sistema. Taigi MVC puikiai tinka kolbai, o MVC modelį mes apsvarstysime šiame pavyzdyje

iš kolbos importo kolba

app = kolba (_name_)

@ app.route ("/")

Sveikas labas ():

grįžti „Sveikas pasaulis“

app.run (derinti = Tiesa)

Šiame kode

  • Konfigūracijos dalis bus

iš kolbos importo kolba

app = kolba (_name_)

  • Peržiūrėti dalį bus

@ app.route ("/")

Sveikas labas ():

grįžti „Sveikas pasaulis“

  • Nors jūs modelio ar pagrindinė dalis bus

app.run (derinti = Tiesa)

41) Paaiškinkite duomenų bazės ryšį „Python“ kolboje?

Kolba palaiko duomenų bazės valdomą programą (RDBS). Tokiai sistemai reikia sukurti schemą, kuriai reikia shema.sql failo perkelti į komandą sqlite3. Taigi, norėdami sukurti ar inicijuoti duomenų bazę kolboje, turite įdiegti komandą sqlite3.

Kolba leidžia prašyti duomenų bazės trimis būdais

  • before_request (): Jie iškviečiami prieš užklausą ir nepateikia jokių argumentų
  • after_request (): Jie paskambina po užklausos ir perduoda atsakymą, kuris bus išsiųstas klientui
  • teardown_request (): Jie iškviečiami, kai iškyla išimtis, o atsakymas nėra garantuotas. Jie iškviečiami sukonstravus atsakymą. Jiems neleidžiama keisti užklausos, o jų vertės nepaisomos.

42) Jūs turite kelis „Memcache“ serverius, kuriuose veikia „Python“ ir kuriuose vienas iš „memcacher“ serverių neveikia ir jis turi jūsų duomenis. Ar jis kada nors bandys gauti pagrindinius duomenis iš to vieno nepavykusio serverio?

Nepavykusio serverio duomenys nebus pašalinti, tačiau yra nuostata dėl automatinio gedimo, kurį galite sukonfigūruoti keliems mazgams. Perdavimas gali būti suaktyvintas bet kokio tipo lizdo ar „Memcached“ serverio lygio klaidų metu, o ne per įprastas kliento klaidas, pvz., Pridedant esamą raktą ir pan.

43) Paaiškinkite, kaip galite sumažinti „Memcached“ serverio veikimo sutrikimus savo „Python“ kūrime?

  • Kai nepavyksta vieno egzemplioriaus, keli iš jų neveikia, tai padidins duomenų bazės serverio apkrovą, kai prarasti duomenys bus perkraunami klientui pateikus užklausą. Norėdami to išvengti, jei jūsų kodas buvo parašytas siekiant sumažinti talpyklos antspaudus, jis paliks minimalų poveikį
  • Kitas būdas yra iškviesti „Memcached“ egzempliorių naujoje mašinoje naudojant pamestų mašinų IP adresą
  • Kodas yra dar viena galimybė sumažinti serverio prastovas, nes tai suteikia jums laisvę keisti „Memcached“ serverių sąrašą atliekant minimalų darbą
  • Laiko skirtojo laiko nustatymas yra dar viena parinktis, kurią kai kurie „Memcached“ klientai įgyvendina „Memcached“ serverio nutrūkimui. Kai jūsų „Memcached“ serveris neveikia, klientas bandys siųsti užklausą, kol bus pasiektas skirtasis laikas

44) Paaiškinkite, kas yra „Dogpile“ efektas? Kaip galima išvengti šio efekto?

„Dogpile“ efektas yra susijęs su įvykiu, kai pasibaigia talpyklos talpa, o svetaines patiria kelios kliento vienu metu pateiktos užklausos. Šio efekto galima išvengti naudojant semaforo užraktą. Šioje sistemoje pasibaigus vertei, pirmasis procesas įgyja užraktą ir pradeda generuoti naują vertę.

45) Paaiškinkite, kaip „Memcached“ neturėtų būti naudojamas jūsų „Python“ projekte?

  • Memchached įprastas netinkamas naudojimas yra naudoti jį kaip duomenų saugyklą, o ne kaip talpyklą
  • Niekada nenaudokite „Memcached“ kaip vienintelio informacijos, reikalingos jūsų programai paleisti, šaltinio. Duomenys visada turėtų būti prieinami ir iš kito šaltinio
  • „Memcached“ yra tik raktų ar reikšmių saugykla ir negali atlikti duomenų užklausos ar pakartoti turinio, kad gautų informaciją
  • „Memcached“ nesiūlo jokios formos šifravimo ar autentifikavimo