Топ Python Въпроси и отговори за интервю (PDF) за 2025 г
Тук са Python въпроси и отговори за интервю за по-свежи и опитни кандидати, за да получат мечтаната работа.
Python Основни въпроси за интервю за първокурсници
1) Какво е Python? Какви са ползите от използването на Python?
Python е език за програмиране с обекти, модули, нишки, изключения и автоматично управление на паметта. Предимствата на Pythons са, че е прост и лесен, преносим, разширим, вградена структура на данни и е с отворен код.
👉 Безплатно изтегляне на PDF: Python Въпроси и отговори за интервю
2) Какво е PEP 8?
PEP 8 е конвенция за кодиране, набор от препоръки за това как да напишете своя Python кодът е по-четим.
3) Какво е мариноване и детурширане?
Pickle модулът приема всякакви Python обект и го преобразува в представяне на низ и го изхвърля във файл с помощта на функцията dump. Този процес се нарича ецване. Докато процесът на извличане на оригинала Python обекти от съхраненото низово представяне се нарича депиклиране.
4) Как е Python тълкувано?
Python езикът е интерпретиран език. Python програмата работи директно от изходния код. Той преобразува изходния код, който е написан от програмиста, в междинен език, който отново се превежда на машинен език, който трябва да бъде изпълнен.
5) Как се управлява паметта в Python?
Python паметта се управлява от Python частно купчино пространство. Всички Python обектите и структурите от данни са разположени в частна купчина. Програмистът няма достъп до тази частна купчина и интерпретаторът се грижи за това Python частна купчина.
Разпределението на Python куп място за Python обекти се извършва от Python мениджър на паметта. Основният API дава достъп до някои инструменти, които програмистът може да кодира.
Python също има вграден колектор за боклук, който рециклира цялата неизползвана памет и освобождава паметта и я прави достъпна за пространството на купчината.
6) Какви са инструментите, които помагат за намиране на грешки или извършване на статичен анализ?
PyChecker е инструмент за статичен анализ, който открива грешките в Python изходния код и предупреждава за стила и сложността на грешката. Pylint е друг инструмент, който проверява дали модулът отговаря на стандарта за кодиране.
7) Какви са Python декоратори?
A Python декораторът е специфична промяна, която правим Python синтаксис за лесна промяна на функциите.
8) Каква е разликата между списък и кортеж?
Разликата между списък и кортеж е, че списъкът е променлив, докато кортежът не е. Кортежът може да бъде хеширан, например, като ключ за речници.
9) Как се предават аргументите по стойност или по препратка?
Всичко в Python е обект и всички променливи съдържат препратки към обектите. Референтните стойности са според функциите. Следователно не можете да промените стойността на препратките. Можете обаче да промените обектите, ако е променлив.
10) Какво е Dict и разбирането на списък?
Те са синтактични конструкции за улесняване на създаването на речник или списък въз основа на съществуващ итерируем.
11) Какви вградени типове предлага Python?
Python предоставя два вградени типа: 1) Променлив и 2) Неизменен.
Променливите вградени типове са:
- списък
- Комплекти
- речници
- Неизменни вградени типове
- Strings
- Кортежи
- Numbers
Неизменните вградени типове са:
- Strings
- Кортежи
- Numbers
12) Обяснете пространството на имената в Python
In Python, всяко въведено име има място, където живее и може да бъде закачено за него. Това е известно като пространство от имена. Това е като кутия, в която име на променлива е съпоставено с поставения обект. Всеки път, когато се търси променливата, това поле ще се търси, за да се получи съответният обект.
13) В какво е ламбда Python?
Това е анонимна функция с един израз, често използвана като вградена функция.
14) Защо ламбда формите в Python нямат изрази?
Ламбда форма в Python няма изрази, тъй като се използва за създаване на нов функционален обект и след това да ги връща по време на изпълнение.
15) Обяснете преминаването Python
Пропуск означава липса на операция Python statement, или с други думи, това е място в съставно твърдение, където трябва да има празно място и нищо не трябва да се пише там.
16) В Python какво представляват итераторите?
In Python, итераторите се използват за итериране на група от елементи, контейнери като списък.
17) Какво представлява unittest в Python?
Рамка за тестване на модули в Python е известен като unittest. Поддържа споделяне на настройки, автоматизирано тестване, код за изключване за тестове, агрегиране на тестове в колекции и др.
18) Обяснете нарязването Python?
Механизъм за избор на набор от елементи от типове последователности като списък, кортеж, низове и т.н., е известен като нарязване.
19) Какво представляват генераторите Python?
Начинът на внедряване на итераторите е известен като генератори. Това е нормална функция, с изключение на това, че дава израз във функцията.
20) Какво съдържа docstring Python?
A Python документационен низ е известен като docstring, това е начин за документиране Python функции, модули и класове.
Python Въпроси за интервю за опитни
21) Как можете да копирате обект в Python?
За да копирате обект в Python, можете да опитате a copy.copy ()
or copy.deepcopy()
за общия случай. Не можете да копирате всички обекти, но повечето от тях.
22) Какво е отрицателен индекс в Python?
Python последователностите могат да бъдат индексирани в положителни и отрицателни числа. За положителен индекс 0 е първият индекс, 1 е вторият индекс и т.н. За отрицателния индекс (-1) е последният индекс, а (-2) е предпоследният индекс и т.н.
23) Как можете да конвертирате число в низ?
За да конвертирате число в низ, използвайте вградената функция str().
Ако искате осмично или шестнадесетично представяне, използвайте вградената функция oct() или hex().
24) Каква е разликата между xrange и range?
Xrange връща обекта xrange, докато range връща списъка и използва същата памет и без значение какъв е размерът на диапазона.
25) В какво се състои модулът и пакетът Python?
In Python, модулът е начинът за структуриране на програма. всеки Python програмният файл е модул, който импортира други модули като обекти и атрибути.
Папката на Python програмата е пакет от модули. Един пакет може да има модули или подпапки.
26) Какви са правилата за локални и глобални променливи в Python?
Ето правилата за местни и глобални променливи в Python:
Локални променливи: Ако на променлива се присвои нова стойност където и да е в тялото на функцията, се приема, че тя е локална.
Глобални променливи: Тези променливи, които са посочени само във функция, са имплицитно глобални.
27) Как можете да споделяте глобални променливи между модулите?
За да споделяте глобални променливи между модули в една програма, създайте специален модул. Импортирайте конфигурационния модул във всички модули на вашето приложение. Модулът ще бъде наличен като глобална променлива в модулите.
28) Обяснете как можете да направите a Python Изпълним скрипт на Unix?
За да направите Python Сценарий изпълним файл на Unix, трябва да направите две неща,
Режимът на файла на скрипта трябва да е изпълним и първият ред трябва да започва с # ( #!/usr/local/bin/python)
29) Обяснете как да изтриете файл в Python?
С помощта на команда os.remove (filename)
or os.unlink(filename)
30) Обяснете как можете да генерирате произволни числа Python?
За генериране на произволни числа в Python, трябва да импортирате команда като
import random random.random()
Това връща произволно число с плаваща запетая в диапазона [0,1)
31) Как можете да получите достъп до модул, написан на Python от C?
Можете да получите достъп до модул, написан на Python от C по следния метод,
Module = PyImport_ImportModule("<modulename>");
32) Каква е ползата от оператора // в Python?
Това е оператор на етажно деление, който се използва за разделяне на два операнда с резултат като частно, показващо само цифри преди десетичната запетая. Например 10//5 = 2 и 10.0//5.0 = 2.0.
33) Споменете пет предимства от използването Python
Ето петте предимства от използването Python:
- Python се състои от огромна стандартна библиотека за повечето интернет платформи като имейл, HTML и др.
- Python не изисква изрично управление на паметта тъй като самият интерпретатор разпределя паметта за нови променливи и ги освобождава автоматично
- Осигурете лесна четливост поради използването на квадратни скоби
- Лесен за научаване за начинаещи
- Наличието на вградени типове данни спестява време и усилия за програмиране от деклариране на променливи
34) Споменете използването на функцията за разделяне в Python
Използването на функцията за разделяне в Python е, че разделя низ на по-къси низове, като използва дефинирания разделител. Той дава списък на всички думи, присъстващи в низа.
35) Каква е разликата между Django, Pyramid и Flask?
Flask е „микрорамка“, създадена предимно за малко приложение с по-прости изисквания. В колба не е нужно да използвате външни библиотеки. Колбата е готова за употреба.
Пирамидите се изграждат за по-големи приложения. Той осигурява гъвкавост и позволява на разработчика да използва правилните инструменти за своя проект. Разработчикът може да избере базата данни, URL структурата, стила на шаблони и др. Подобно на Pyramid, Django може да се използва и за по-големи приложения. Той включва ORM.
Python Въпроси и отговори за интервю с колба
36) Обяснете Flask и неговите предимства
Flask е уеб микро рамка за Python базиран на „Werkzeug, Jinja 2 и добри намерения“, лицензиран от BSD. Werkzeug и jingja са две от неговите зависимости.
Колбата е част от микрорамката. Което означава, че няма да има почти никакви зависимости от външни библиотеки. Това прави рамката лека, докато има малка зависимост за актуализиране и по-малко грешки в сигурността.
37) Какво е Flask-WTF и какви са техните характеристики?
Flask-WTF предлага проста интеграция с WTForms. Функциите, включени за Flask WTF, са:
- Интеграция с WTFforms
- Защитена форма с CSRF токен
- Глобална CSRF защита
- Интернационализация интеграция
- Поддръжка на Recaptcha
- Качване на файл, което работи с Flask Uploads
38) Обяснете какъв е обичайният начин за работа на скрипта на Flask?
Обичайният начин за работа на скрипта на колбата е:
- Или това трябва да е пътя за импортиране за вашето приложение
- Или пътят към a Python досие
39) Обяснете как можете да получите достъп до сесии във Flask?
Една сесия основно ви позволява да запомните информация от една заявка до друга. В колба той използва подписана бисквитка, така че потребителят да може да разглежда съдържанието на сесията и да го променя. Потребителят може да променя сесията само ако тя има секретния ключ Flask.secret_key.
40) MVC модел ли е Flask и ако да, дайте пример, показващ MVC модел за вашето приложение?
По принцип Flask е минималистична рамка, която се държи по същия начин като MVC рамката. Така че MVC е идеално подходящ за Flask и моделът за MVC ще разгледаме за следващия пример
от колба внос Колба
app = Flask(_name_) @app.route("/") Def hello(): return "Hello World" app.run(debug = True) |
В този код вашата конфигурационна част ще бъде от flask import Flaskapp = Flask(_name_) Вижте част ще бъде @app.route("/") Def hello(): return "Hello World" Докато моделирате или основната част ще бъде |
41) Обяснете връзката с база данни в Python Колба?
Flask поддържа приложения, захранвани от бази данни (RDBS). Такава система изисква създаване на схема, която изисква предаване на файла shema.sql в команда sqlite3. Така че трябва да инсталирате команда sqlite3, за да създадете или инициирате базата данни във Flask.
Flask позволява да се иска база данни по три начина
- преди_заявка(): Извиква се преди заявка и не предава аргументи
- after_request(): Извиква се след заявка и предава отговора, който ще бъде изпратен на клиента
- teardown_request(): Извиква се в ситуация, когато е повдигнато изключение и отговорът не е гарантиран. Те се извикват след като отговорът е конструиран. Не им е разрешено да променят заявката и техните стойности се игнорират.
42) Ако имате множество Memcache сървъри и един от тях се повреди, който съдържа данни, ще се опита ли да ги получи?
Данните в неуспешния сървър няма да бъдат премахнати, но има разпоредба за автоматична повреда, която можете да конфигурирате за множество възли. Fail-over може да се задейства по време на всякакъв вид грешки на ниво сокет или Memcached сървър, а не по време на нормални клиентски грешки като добавяне на съществуващ ключ и т.н.
43) Обяснете как можете да сведете до минимум прекъсванията на сървъра Memcached във вашия Python развитие?
- Когато едно копие се повреди, няколко от тях се повредят, това ще натовари по-голямо сървъра на базата данни, когато изгубените данни се презареждат, докато клиентът прави заявка. За да избегнете това, ако вашият код е написан, за да минимизира блъсканицата в кеша, тогава той ще остави минимално въздействие
- Друг начин е да изведете екземпляр на memcached на нова машина, използвайки IP адреса на изгубената машина
- Кодът е друга опция за минимизиране на прекъсванията на сървъра, тъй като ви дава свободата да променяте списъка със сървъри Memcached с минимална работа
- Задаването на стойност за изчакване е друга опция, която някои клиенти на Memcached прилагат за прекъсване на сървъра на Memcached. Когато вашият Memcached сървър спре, клиентът ще продължи да се опитва да изпрати заявка, докато не бъде достигнат лимитът за изчакване.
44) Обяснете какво е Dogpile ефект? Как можете да предотвратите този ефект?
Ефектът Dogpile се отнася до събитието, когато кешът изтече и уебсайтовете са засегнати от множество заявки, направени от клиента едновременно. Този ефект може да бъде предотвратен чрез използване на семафорно заключване. В тази система, когато стойността изтече, първият процес придобива заключването и започва да генерира нова стойност.
45) Обяснете как memcached не трябва да се използва във вашия Python проект?
Ето начините, по които не трябва да използвате memcached във вашия Python проект:
- Обичайната злоупотреба с Memcached е използването му като хранилище на данни, а не като кеш
- Никога не използвайте Memcached като единствен източник на информацията, от която се нуждаете, за да стартирате вашето приложение. Данните винаги трябва да са достъпни и от друг източник
- Memcached е само хранилище за ключове или стойности и не може да извършва заявка върху данните или да обикаля съдържанието, за да извлече информация.
- Memcached не предлага никаква форма на сигурност нито при криптиране, нито при удостоверяване.
Python Въпроси за интервю за програмиране
46) Какво е Python Ако изявление?
Python ако Statement се използва за операции за вземане на решения. Той съдържа част от код, който се изпълнява само когато условието, дадено в оператора if, е вярно. Ако условието е невярно, тогава се изпълнява незадължителният оператор else, който съдържа някакъв код за условието else.
Когато искате да обосновете едно условие, докато другото условие не е вярно, тогава използвате Python оператор if-else.
Python Синтаксис на израза if:
if expression
Statement
else
Statement
Python if… else Блок-схема
Да видим пример за Python if else изявление:
Да видим пример за Python if else изявление:
def main(): x,y =2,8 if(x < y): st= "x is less than y" print(st) if __name__ == "__main__": main()
47) Обяснете докато влизате в цикъл Python с пример
Докато цикълът прави точно същото нещо, което прави „изявлението if“, но вместо да изпълни кодовия блок веднъж, те скачат обратно до точката, в която е започнал кодът, и повтарят целия процес отново.
Синтаксисът на цикъла while е както следва:
while expression
Statement
Примерът за цикъл while е следният:
x=0 #define a while loop while(x <4): print(x) x = x+1
48) В какво е enumerate(). Python?
Enumerate() в Python е вградена функция, използвана за присвояване на индекс на всеки елемент от итерируемия обект. Той добавя цикъл към итерируемите обекти, като същевременно следи текущия елемент и връща обекта в изброима форма. Този обект може да се използва в for цикъл, за да го преобразувате в списък с помощта на метода list().
Пример за enumerate() е както следва:
Да предположим, че искаме да направим номериране за нашия месец (януари, февруари, март, ….юни), така че декларираме променливата i, която изброява числата, докато m ще отпечата номера на месеца в списъка.
#use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for i, m in enumerate (Months): print(i,m) # use the break and continue statements #for x in range (10,20): #if (x == 15): break #if (x % 5 == 0) : continue #print x
49) Как можете да използвате for цикъл, за да повтаряте едно и също изявление отново и отново?
Можете да използвате for цикъл дори за повтаряне на едно и също изявление отново и отново. Тук в примера сме отпечатали думата „guru99“ три пъти.
Пример:
За да повторим едно и също изявление няколко пъти, ние сме декларирали числото в променлива i (i в 123). Така че, когато стартирате кода, както е показано по-долу, той отпечатва израза (guru99), който много пъти по-голям от числото, декларирано за нашата променлива в (i в 123).
for i in '123': print ("guru99",i,)
50) Какво представлява Tuple Matching Python?
Tuple Съвпадение в Python е метод за групиране на кортежите чрез съвпадение на втория елемент в кортежите. Това се постига чрез използване на речник чрез проверка на втория елемент във всеки кортеж в програмирането на Python. Въпреки това можем да създадем нови кортежи, като вземем части от съществуващи кортежи.
Синтаксис:
Tup = ('Jan','feb','march')
За да напишете празен кортеж, трябва да напишете като две скоби, които не съдържат нищо-
tup1 = ();
51) Обяснете речника в Python с пример
A Речник в Python е неподредената и променлива колекция от стойности на данни, която съдържа двойки ключ-стойност. Всяка двойка ключ-стойност в речника картографира ключа към свързаната с него стойност, което го прави по-оптимизиран. Речник в python се декларира чрез затваряне на разделен със запетаи списък от двойки ключ-стойност с помощта на фигурни скоби ({}). Python Речникът е класифициран в два елемента: ключове и стойности.
Синтаксис за Python Речник:
Dict = { ' Tim': 18, xyz,.. }
Пример
Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25} print((Dict['Tiffany']))
52) Как можете да копирате целия речник в нов речник?
Можете също да копирате целия речник в нов речник. Например, тук копирахме нашия оригинален речник с новото име на речника „Момчета“ и „Момичета“.
Пример
Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25} Boys = {'Tim': 18,'Charlie':12,'Robert':25} Girls = {'Tiffany':22} studentX=Boys.copy() studentY=Girls.copy() print(studentX) print(studentY)
53) Как можете да актуализирате Python речник?
Можете да актуализирате речник, като добавите нов запис или двойка ключ-стойност към съществуващ запис или като изтриете съществуващ запис. Тук в примера ще добавим друго име, „Сара“ към нашия съществуващ речник.
Пример
Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25} Dict.update({"Sarah":9}) print(Dict)
54) Дайте пример за метод на речник items().
Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25} print("Students Name: %s" % list(Dict.items()))
55) Как можете да сортирате елементи в Python речник?
В речника можете лесно да сортирате елементите. Например, ако искаме да отпечатаме името на елементите на нашия речник по азбучен ред, трябва да използваме цикъл for. Той ще сортира съответно всеки елемент от речника.
Пример:
Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25} Boys = {'Tim': 18,'Charlie':12,'Robert':25} Girls = {'Tiffany':22} Students = list(Dict.keys()) Students.sort() for S in Students: print(":".join((S,str(Dict[S]))))
56) Дайте пример за речник len() и Python Списък с cmp() метод
Речник len() Пример:
Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25} print("Length : %d" % len (Dict))
cmp() Пример:
Boys = {'Tim': 18,'Charlie':12,'Robert':25} Girls = {'Tiffany':22} print cmp(Girls, Boys)
57) Какви са всички речникови методи:
Ето списъка с речникови методи:
- копие()
- актуализация ()
- елементи ()
- вид()
- len ()
- cmp()
- Str()
58) Обяснете аритметичните оператори с пример
аритметика Operaизпълняват различни аритметични изчисления като събиране, изваждане, умножение, деление, %модул, експонента и т.н. Има различни методи за аритметично изчисление в Python, както можете да използвате функцията eval, да декларирате променлива и да изчислявате или да извиквате функции.
Пример: За аритметични оператори ще вземем прост пример за събиране, където ще добавим двуцифрено 4+5=9
x= 4 y= 5 print(x + y)
59) Дайте пример за логически оператори
Пример за логически оператори:
a = True b = False print(('a and b is',a and b)) print(('a or b is',a or b)) print(('not a is',not a))
60) Обяснете операторите за членство с пример
Тези оператори тестват за членство в последователност като списъци, низове или кортежи. Използват се два оператора за членство Python. (в, не в). Той дава резултата въз основа на променливата, присъстваща в определена последователност или низ.
Пример:
Например тук проверяваме дали стойността на x=4 и стойността на y=8 е налична в списъка или не, като използваме оператори in и not in.
x = 4 y = 8 list = [1, 2, 3, 4, 5 ]; if ( x in list ): print("Line 1 - x is available in the given list") else: print("Line 1 - x is not available in the given list") if ( y not in list ): print("Line 2 - y is not available in the given list") else: print("Line 2 - y is available in the given list")
61) Напишете код, за да демонстрирате приоритет на оператора Python:
v = 4 w = 5 x = 8 y = 2 z = 0 z = (v+w) * x / y; print("Value of (v+w) * x/ y is ", z)
62) Обяснете масивите в Pythons с пример
A Python Array е колекция от общ тип структури от данни, имащи елементи с един и същи тип данни. Използва се за съхраняване на колекции от данни. в Python програмиране, масивите се обработват от модула “array”. Ако създавате масиви с помощта на модула array, елементите на масива трябва да са от един и същи числов тип.
Синтаксис за създаване на масив Python
Можете да декларирате масив в Python докато го инициализирате, като използвате следния синтаксис.
arrayName = array.array(type code for data type, [array,items])
Следното изображение обяснява синтаксиса.
- Identifier: посочете име, както обикновено, за променливи
- Модули: Python има специален модул за създаване на масив в Python, наречен „масив“ – трябва да го импортирате, преди да го използвате
- Начин на доставка: модулът масив има метод за инициализиране на масива. Необходими са два аргумента, код на типа и елементи.
- Type Code: посочете типа данни, като използвате наличните кодове на типове (вижте списъка по-долу)
- Елементи: посочете елементите на масива в квадратните скоби, например [130,450,103]
Пример
import array as myarray abc = myarray.array('d', [2.5, 4.9, 6.7])
63) Как можете да получите достъп до елементите на масива?
Можете да получите достъп до всеки елемент от масива, като използвате неговия индекс.
Синтаксисът е
arrayName[indexNum]
Пример
import array balance = array.array('i', [300,200,100]) print(balance[1])
64) Как можете да вмъкнете елементи в масив?
Python Операцията за вмъкване на масив ви позволява да вмъкнете един или повече елементи в масив в началото, края или всеки даден индекс на масива. Този метод очаква два аргумента индекс и стойност.
Синтаксисът е
arrayName.insert(index, value)
Пример
Нека добавим нова стойност веднага след втория елемент от масива. В момента нашият балансов масив има три елемента: 300, 200 и 100. Помислете за втория елемент от масива със стойност 200 и индекс 1.
За да вмъкнете новата стойност точно „след“ индекс 1, трябва да посочите индекс 2 във вашия метод за вмъкване, както е показано по-долу Python пример за масив:
import array balance = array.array('i', [300,200,100]) balance.insert(2, 150) print(balance)
65) Как можете да изтриете елементи в масива?
С тази операция можете да изтриете един елемент от масив по стойност. Този метод приема само един аргумент, стойност. След изпълнение на този метод елементите на масива се пренареждат и индексите се присвояват отново.
Синтаксисът е
arrayName.remove(value)
Пример
Нека премахнем стойността на "3" от масива
import array as myarray first = myarray.array('b', [2, 3, 4]) first.remove(3) print(first)
66) Как можете да търсите и да получите индекса на стойност в масив?
С тази операция можете да търсите елемент в масив въз основа на неговата стойност. Този метод приема само един аргумент, стойност. Това е недеструктивен метод, което означава, че не засяга стойностите на масива.
Синтаксисът е
arrayName.index(value)
Пример
Нека намерим стойността на “3” в масива. Този метод връща индекса на търсената стойност.
import array as myarray number = myarray.array('b', [2, 3, 4, 5, 6]) print(number.index(3))
67) Как можете да обърнете масива Python?
Можете да използвате reverse(), за да обърнете масива Python.
Пример:
import array as myarray number = myarray.array('b', [1,2, 3]) number.reverse() print(number)
68) Дайте пример за конвертиране на масив в Unicode
Примерът за преобразуване на масив в Unicode е:
from array import array p = array('u',[u'\u0050',u'\u0059',u'\u0054',u'\u0048',u'\u004F',u'\u004E']) print(p) q = p.tounicode() print(q)
69) Дайте пример за клас в Python
Пример за клас в Python
# Example file for working with classes class myClass(): def method1(self): print("Guru99") def method2(self,someString): print("Software Testing:" + someString) def main(): # exercise the class methods c = myClass () c.method1() c.method2(" Testing is fun") if __name__== "__main__": main()
70) Обяснете наследяването с пример
Наследяването е функция, използвана в обектно-ориентирано програмиране; това се отнася до дефиниране на нов клас с по-малко или никакви модификации на съществуващ клас. Новият клас се нарича производен клас, а от този, който наследява, се нарича базов. Python подпомага наследяването; той също така поддържа множество наследявания. Един клас може да наследи атрибути и методи на поведение от друг клас, наречен подклас или клас наследник.
Пример за наследство:
# Example file for working with classes class myClass(): def method1(self): print("Guru99") class childClass(myClass): #def method1(self): #myClass.method1(self); #print ("childClass Method1") def method2(self): print("childClass method2") def main(): # exercise the class methods c2 = childClass() c2.method1() #c2.method2() if __name__== "__main__": main()
71) Дайте пример за Python конструктори
Пример за Python конструкторите
class User: name = "" def __init__(self, name): self.name = name def sayHello(self): print("Welcome to Guru99, " + self.name) User1 = User("Alex") User1.sayHello()
72) Как можете да получите достъп до стойности в низ?
Python не поддържа символен тип, те се третират като низове с дължина едно, също считани за подниз.
Можете да използвате квадратни скоби за разделяне заедно с индекса или индексите, за да получите подниз.
var1 = "Guru99!" var2 = "Software Testing" print ("var1[0]:",var1[0]) print ("var2[1:5]:",var2[1:5])
73) Обяснете всички низови оператори с пример
Оператори за низове с пример:
OperaTor | Descriptйон | Пример |
---|---|---|
[] | Срез- дава буквата от дадения индекс | a[1] ще даде „u” от думата Guru като такава (0=G, 1=u, 2=r и 3=u) |
[ : ] | Range slice - дава знаците от дадения диапазон | x [1:3] ще даде „ур“ от думата Гуру. Запомнете, че няма да вземе предвид 0, което е G, ще вземе предвид думата след това ur. |
in | Membership-връща true, ако в дадения низ съществува буква | u присъства в думата Guru и следователно ще даде 1 (вярно) |
Не в | Членство-връща true, ако буква не съществува в дадения низ | Не присъствам в думата Guru и следователно ще даде 1 |
r/R | Необработеният низ потиска действителното значение на екраниращите знаци. | Print r'\n' отпечатва \n и print R'/n' отпечатва \n |
% – Използва се за формат на низ | %r – Вмъква каноничното представяне на низ на обекта (т.е. repr(o)) %s- Вмъква представянето на низ на представяне на обекта (т.е. str(o)) %d – ще форматира число за показване | Резултатът от този код ще бъде „guru 99“. |
+ | Той свързва 2 низа | Той свързва низове и дава резултата |
* | Повтарям | Отпечатва знака два пъти. |
74) Дайте пример за функция sleep() в Python
Пример за функция sleep() в Python
import time print("Welcome to guru99 Python Tutorials") time.sleep(5) print("This message will be printed after a wait of 5 seconds")
75) Какво представлява методът на таймера Python?
Таймерът е метод, наличен с Threading, и помага да получите същата функционалност като Python време за сън.
from threading import Timer print('Code Execution Started') def display(): print('Welcome to Guru99 Tutorials') t = Timer(5, display) t.start()
76) Дайте пример за календарен клас
Пример за календарен клас
import calendar # Create a plain text calendar c = calendar.TextCalendar(calendar.THURSDAY) str = c.formatmonth(2025, 1, 0, 0) print(str) # Create an HTML formatted calendar hc = calendar.HTMLCalendar(calendar.THURSDAY) str = hc.formatmonth(2025, 1) print(str) # loop over the days of a month # zeroes indicate that the day of the week is in a next month or overlapping month for i in c.itermonthdays(2025, 4): print(i) # The calendar can give info based on local such a names of days and months (full and abbreviated forms) for name in calendar.month_name: print(name) for day in calendar.day_name: print(day) # calculate days based on a rule: For instance an audit day on the second Monday of every month # Figure out what days that would be for each month, we can use the script as shown here for month in range(1, 13): # It retrieves a list of weeks that represent the month mycal = calendar.monthcalendar(2025, month) # The first MONDAY has to be within the first two weeks week1 = mycal[0] week2 = mycal[1] if week1[calendar.MONDAY] != 0: auditday = week1[calendar.MONDAY] else: # if the first MONDAY isn't in the first week, it must be in the second week auditday = week2[calendar.MONDAY] print("%10s %2d" % (calendar.month_name[month], auditday))
77) Обяснете Python ZIP файл с пример
Python ви позволява бързо да създавате zip/tar архиви.
Следващата команда ще компресира цялата директория
shutil.make_archive(output_filename, 'zip', dir_name)
Следната команда ви дава контрол върху файловете, които искате да архивирате
ZipFile.write(filename)
Пример за Python ZIP файл
import os import shutil from zipfile import ZipFile from os import path from shutil import make_archive # Check if file exists if path.exists("guru99.txt"): # get the path to the file in the current directory src = path.realpath("guru99.txt"); # rename the original file os.rename("career.guru99.txt","guru99.txt") # now put things into a ZIP archive root_dir,tail = path.split(src) shutil.make_archive("guru99 archive","zip",root_dir) # more fine-grained control over ZIP files with ZipFile("testguru99.zip", "w") as newzip: newzip.write("guru99.txt") newzip.write("guru99.txt.bak")
78) Какви са често срещаните примери за изключения в Python?
Често срещаните примери за изключения в Python са:
- Деление на нула
- Достъп до файл, който не съществува.
- Събиране на два несъвместими вида
- Опит за достъп до несъществуващ индекс на последователност
- Премахване на таблицата от прекъснатия сървър на база данни.
- Теглене от банкомат на повече от наличната сума
79) Обяснете важното Python грешки
Важното Python грешките са 1) ArithmeticError, 2) ImportError и 3) IndexError.
- ArithmeticError: ArithmeticError действа като основен клас за всички аритметични изключения. Повдига се за грешки в аритметични операции.
- ImportError: ImportError се появява, когато се опитвате да импортирате модул, който не присъства. Този вид изключение възниква, ако сте направили грешка при въвеждане в името на модула или модула, който не присъства в стандартния път.
- IndexError: Появява се IndexError, когато се опитате да посочите последователност, която е извън обхвата.
80) Обяснете JSON dumps() в Python с пример
json.dumps() в Python е метод, който преобразува речникови обекти на Python във формат на низови данни JSON. Полезно е, когато се изисква обектите да бъдат във формат на низ за операции като анализиране, отпечатване и т.н.
Пример:
import json x = { "name": "Ken", "age": 45, "married": True, "children": ("Alice","Bob"), "pets": ['Dog'], "cars": [ {"model": "Audi A1", "mpg": 15.1}, {"model": "Zeep Compass", "mpg": 18.1} ] } # sorting result in asscending order by keys: sorted_string = json.dumps(x, indent=4, sort_keys=True) print(sorted_string)
81) Обяснете подробно JSON на Python (Декодиране) с пример
Декодирането на JSON низ се извършва с помощта на вграден метод json.loads()
& json.load()
на JSON библиотека в Python.
Тук таблицата за превод показва пример за JSON обекти към Python обекти, които са полезни за извършване на декодиране Python на JSON низ.
JSON | Python |
---|---|
Обект | Dict |
Array | списък |
Низ | Unicode |
число – вътр | Число – int, long |
число – реално | Плувка |
Вярно | Вярно |
Фалшив | Фалшив |
Null | None |
Основният JSON към Python пример за декодиране с помощта на функцията json.loads:
import json # json library imported # json data string person_data = '{ "person": { "name": "Kenn", "sex": "male", "age": 28}}' # Decoding or converting JSON format in dictionary using loads() dict_obj = json.loads(person_data) print(dict_obj) # check type of dict_obj print("Type of dict_obj", type(dict_obj)) # get human object details print("Person......", dict_obj.get('person'))
82) Напишете код за метода encode().
Код за метода encode():
# import JSONEncoder class from json from json.encoder import JSONEncoder colour_dict = { "colour": ["red", "yellow", "green" ]} # directly called encode method of JSON JSONEncoder().encode(colour_dict)
83) Напишете а Python код за създаване на масив в numpy Python матрица
Код за създаване на масив в numpy Python матрица
import numpy as np M1 = np.array([[5, -10, 15], [3, -6, 9], [-4, 8, 12]]) print(M1)
84) Напишете Phyhon код за изваждане на матрица
Phyhon код за изваждане на матрица
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [-7, 14, 21]]) M2 = np.array([[9, -18, 27], [11, 22, 33], [13, -26, 39]]) M3 = M1 - M2 print(M3)
85) Напишете код за матрично умножение
Код за умножение на матрица
импортиране на numpy като np
M1 = np.array([[3, 6], [5, -10]]) M2 = np.array([[9, -18], [11, 22]]) M3 = M1.dot(M2) print(M3)
86) Обяснете срязването на матрица с пример
Нарязването ще ви върне елементите от матрицата въз основа на дадения начален / краен индекс.
Синтаксисът за нарязване е:
[start:end]
- Ако началният индекс не е даден, той се счита за 0. Например [:5], това означава като [0:5].
- Ако краят не бъде предаден, той ще приеме дължината на масива.
- Ако начало/край има отрицателни стойности, нарязването ще се извърши от края на масива.
Преди да работим върху нарязване на матрица, нека първо разберем как да приложим нарязване върху прост масив.
import numpy as np arr = np.array([2,4,6,8,10,12,14,16]) print(arr[3:6]) # will print the elements from 3 to 5 print(arr[:5]) # will print the elements from 0 to 4 print(arr[2:]) # will print the elements from 2 to length of the array. print(arr[-5:-1]) # will print from the end i.e. -5 to -2 print(arr[:-1]) # will print from end i.e. 0 to -2
87) Пишете Python код за намиране на средна стойност чрез цикъл
Ето код за намиране на средна стойност чрез цикъл:
def cal_average(num): sum_num = 0 for t in num: sum_num = sum_num + t avg = sum_num / len(num) return avg print("The average is", cal_average([18,25,3,41,5]))
88) Напишете код за броя на списъка
Ето код за преброяване на списъка:
list1 = ['red', 'green', 'blue', 'orange', 'green', 'gray', 'green'] color_count = list1.count('green') print('The count of color: green is ', color_count)
89) Как можете да преброите дублирани елементи в даден списък?
преброяване на дублирани елементи в даден списък
list1 = [2,3,4,3,10,3,5,6,3] elm_count = list1.count(3) print('The count of element: 3 is ', elm_count)
90) Напишете код за получаване на индекс на елемент в списък, използвайки for цикъл
Код за получаване на индекс на елемент в списък с помощта на for цикъл:
my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] all_indexes = [] for i in range(0, len(my_list)) : if my_list[i] == 'Guru' : all_indexes.append(i) print("Originallist ", my_list) print("Indexes for element Guru : ", all_indexes)
91) Дайте пример за Python Тип()
str_list = "Welcome to Guru99" age = 50 pi = 3.14 c_num = 3j+10 my_list = ["A", "B", "C", "D"] my_tuple = ("A", "B", "C", "D") my_dict = {"A":"a", "B":"b", "C":"c", "D":"d"} my_set = {'A', 'B', 'C', 'D'} print("The type is : ",type(str_list)) print("The type is : ",type(age)) print("The type is : ",type(pi)) print("The type is : ",type(c_num)) print("The type is : ",type(my_list)) print("The type is : ",type(my_tuple)) print("The type is : ",type(my_dict)) print("The type is : ",type(my_set))
92) Как можете да печатате без нов ред Python?
От Python 3+, въведен е допълнителен параметър за print(), наречен end=. Този параметър се грижи за премахването на новия ред, който се добавя по подразбиране в print().
в Python 3 печат без нов ред в примера по-долу, искаме низовете да се отпечатват на един и същи ред Python. За да работи това, просто добавете end=”” в print(), както е показано в примера по-долу:
print("Hello World ", end="") print("Welcome to Guru99 Tutorials")
93) Как да отпечатам шаблона звезда(*) без нов ред и интервал?
Код за отпечатване на шаблона звезда (*) без нов ред и интервал:
for i in range(0, 20): print('*', end="")
Тези въпроси за интервюто също ще ви помогнат във вашата viva (устна)