Python тілінің синтаксисі мен құрылымы



бет4/4
Дата25.11.2023
өлшемі42,91 Kb.
#127098
1   2   3   4
Python модульдері.

Python-дағы Модульдер-бұл басқа бағдарламаларға импорттауға болатын Python коды бар файлдар. Модульдер кодты қайта пайдалануға және бағдарламалық жасақтама жобаларын әзірлеуді жеңілдетуге арналған.
Python-да көптеген кіріктірілген модульдер бар, оларды файлдармен жұмыс істеу, желімен жұмыс істеу, жолдарды өңдеу және т. б. сияқты әртүрлі тапсырмаларды орындау үшін пайдалануға болады.:
Os-операциялық жүйемен жұмыс істеуге арналған модулі
Math-математикалық амалдарға арналған модулі
Datetime-күн мен уақытпен жұмыс істеуге арналған модуль
Random-кездейсоқ сандар генерациясымен жұмыс істеуге арналған модуль
Сонымен қатар, Python-да әзірлеушілер қауымдастығы жасаған көптеген модульдер бар. Олардың көпшілігін pip пакет менеджері арқылы орнатуға болады. Мысалы, көпөлшемді массивтермен жұмыс істеуге арналған numpy модулі, деректерді талдауға арналған пандалар, HTTP сұрауларымен жұмыс істеуге арналған сұраныстар және т. б.
Модульді Python бағдарламасында пайдалану үшін оны импорттау кілт сөзімен импорттау керек. Мысалы:
import math
print(math.sqrt(25)) # выводит 5.0

  1. Python сценарийлері қалай орындалады?

Python-бұл интерпретацияланған бағдарламалау тілі, яғни Python коды C немесе Java сияқты тілдердегідей машиналық кодқа жиналмайды. Оның орнына Python аудармашысы кодты бастапқы файлдан тікелей орындайды.
Python сценарийлерін орындау процесі әдетте келесідей болады:

  1. Лексикалық талдау: Python аудармашысы алдымен бастапқы кодты айнымалы атаулар, кілт сөздер, операторлар, жақшалар және сандар сияқты лексемаларға бөледі.

  2. Талдау: содан кейін Python аудармашысы кодтың Синтаксистік құрылымы болып табылатын дерексіз синтаксистік ағаш (AST) деп аталатын ағаш құрылымын жасау үшін лексемаларды пайдаланады. Бұл аудармашыға кодтың синтаксистік дұрыстығын тексеруге мүмкіндік береді.

  3. Байт кодын құрастыру: талдаудан кейін Python аудармашысы AST кодын байт кодына құрастырады, бұл Python виртуалды машинасы орындай алатын нұсқаулар жиынтығы.

  4. Байт кодын орындау: Python аудармашысы Python виртуалды машинасында байт кодын орындайды, бұл жадтағы объектілерді құруға және өзгертуге, өрнектер мен операторларды орындауға және функцияларды шақыруға әкеледі.

Осылайша, Python сценарийлерін Python аудармашысы біртіндеп орындайды, ол кодты байт кодына түрлендіреді және оны Python виртуалды машинасында орындайды.

  1. Python Memory Manager тікелей Private Heap Space-те жадты бөлумен айналысады.

Иә, Python Memory Manager (Python-дағы жадыны басқару) Private Heap Space-те (жеке үйінді кеңістігі) жадты бөлектеу және басқарумен айналысады. Python-да нысанды жасаған кезде, Memory Manager Private Heap Space-те тиісті жад көлемін бөледі. Бұл процесс жадты бөлу (allocation) деп аталады.
Memory Manager сонымен қатар жадтың қолданылуын бақылайды және объект пайдаланылмаған кезде оны босатады. Бұл процесс жадты босату (deallocation) деп аталады. Нысанда оған сілтеме болмаған кезде ол автоматты түрде пайда болады.
Python жадты босату үшін пайдаланылмаған нысандарды іздеуді және жоюды жүзеге асыратын жадты автоматты басқару механизмін (Garbage Collection) пайдаланады. Бұл жадты қолмен босатудың қажеті жоқ, бұл Python-дағы кодты қауіпсіз және қолдануға ыңғайлы етеді.

  1. Memory manager API арқылы қол жеткізуге мүмкіндік береді

Memory manager (жад менеджері) - бұл компьютердің жадына кіруді басқаратын бағдарлама немесе амалдық жүйенің бөлігі.

API (Application Programming Interface) - бұл әртүрлі бағдарламалар мен бағдарламалық жасақтама компоненттері арасында өзара әрекеттесуге мүмкіндік беретін нұсқаулар, функциялар мен хаттамалар жиынтығы.


Memory manager API арқылы қол жеткізу бағдарламашы өз бағдарламасынан компьютер жадын басқару үшін Memory manager ұсынған функциялар мен протоколдар жиынтығын пайдалана алатынын білдіреді. Мысалы, бағдарламашы өз бағдарламасы үшін белгілі бір жадты сұрай алады, бұрыннан пайдаланылған жадты босата алады немесе компьютерде қол жетімді жад туралы ақпарат ала алады.

Осылайша, Memory manager API пайдалану бағдарламашыларға қолданба жадын тиімдірек басқаруға және жалпы бағдарламаның өнімділігін арттыруға көмектеседі.



  1. Қандай құралдар қателерді табуға немесе статикалық талдау жасауға көмектеседі?

Қателерді табуға және статикалық кодты талдауға көмектесетін көптеген құралдар бар. Міне, олардың бірнешеуі:

  1. Линтерлер: бұл сіздің кодты сканерлейтін және кодтау стиліндегі ықтимал мәселелер немесе бұзушылықтар туралы ескертетін құралдар. Кейбір танымал линтерлерге JavaScript үшін Eslint, Python үшін Pylint, Ruby үшін Rubocop және т.б. кіреді.

  2. Статикалық анализаторлар: бұл сіздің кодты құрастыру немесе орындау кезінде қателерді тексеретін құралдар. Олар пайдаланылмаған айнымалылар, теру қателері, деректерге қол жеткізу мәселелері және т.б. сияқты мәселелерді анықтай алады. Кейбір танымал статикалық анализаторларға SonarQube, Checkstyle, PMD және т.б. кіреді.

  3. Дебаггерлер: бұл сіздің кодты зерттеуге және жұмыс уақытында қателерді табуға көмектесетін құралдар. Олар сізге бағдарламаның дұрыс уақытта орындалуын тоқтатуға, айнымалылардың ағымдағы күйін көруге, қадамдар бойынша кодты орындауға және т.б. мүмкіндік береді. Ең танымал дебаггерлердің қатарына C / C для үшін GDB, Python үшін pdb, Swift үшін lldb және т.б. кіреді.

  4. IDE: көптеген интеграцияланған даму орталарында (ide) статикалық талдау мен қателерді іздеуге арналған кіріктірілген құралдар бар. Олар әдетте кодты автоматты түрде толықтыру, статикалық кодты талдау, ықтимал мәселелер туралы ескертулер және т.б. сияқты мүмкіндіктерді қамтиды. Кейбір танымал IDE-ге C# үшін Visual Studio, Java үшін IntelliJ IDEA, Python үшін PyCharm және т.б. кіреді.

  5. Тестілеу: автоматты тесттер сіздің кодыңыздың жұмысын қателіктер үшін тексеруге мүмкіндік береді. Тесттер код модульдері үшін де, бүкіл бағдарлама үшін де жазылуы мүмкін. Кейбір танымал тестілеу шеңберлеріне Java үшін JUnit, Python үшін pytest, JavaScript үшін Mocha және т.б. кіреді.

Бұл құралдар сіздің кодыңыздағы қателерді анықтауға және түзетуге көмектеседі



  1. PyChecker-Python бастапқы кодындағы қателерді анықтайтын және қатенің стилі мен күрделілігі туралы ескертетін статикалық талдау құралы.

Иә, Сіз дұрыс айтасыз. PyChecker-Python бастапқы кодындағы ықтимал қателерді анықтауға және Код стиліндегі мәселелер туралы ескертуге мүмкіндік беретін Python үшін статикалық талдау құралы. Ол бастапқы код синтаксисін тексеру және жарияланбаған айнымалылар, пайдаланылмаған код, импорттау қателері және т.б. сияқты ең көп таралған қателерді анықтау үшін бірнеше тексерулерді орындау үшін анализаторларды пайдаланады. PyChecker сонымен қатар әдеттегі тәжірибеге сәйкес айнымалы атауды немесе функцияларды пайдалану сияқты код стилін жақсарту бойынша ұсыныстар бере алады. Тұтастай алғанда, PyChecker кодтың жоғары сапасын қамтамасыз етуге және Python-да бағдарламалық жасақтаманы әзірлеу процесінде қателерді азайтуға көмектеседі.

  1. Pylint-бұл модульдің кодтау стандартына сәйкес келетіндігін тексеретін тағы бір құрал.

Иә, Сіз дұрыс айтасыз. Pylint-Python тіліндегі статикалық кодты талдау құралы, ол кодтың pep 8 кодтау стандартына сәйкестігін тексере алады, сонымен қатар ықтимал қателер мен Кодтау стиліндегі мәселелерді анықтай алады.

Pylint кодты pep 8 стандартына сәйкестігін автоматты түрде тексеру үшін пайдаланылуы мүмкін, бұл Python кодтау стилі бойынша ұсыныс. Бұл жобада біркелкі кодтау стилін қамтамасыз етуге, кодтың оқылуын жақсартуға және оны қолдауды жеңілдетуге мүмкіндік береді.


Pylint сонымен қатар кодта пайдаланылмаған айнымалылар, импортты дұрыс пайдаланбау және басқалар сияқты ықтимал қателерді анықтайды. Бұл әзірлеушілерге кодтағы мәселелерді тезірек анықтауға және оның сапасын жақсартуға мүмкіндік береді.

Сонымен қатар, Pylint кодты басқа кодтау стандарттарына сәйкестігін автоматты түрде тексеру үшін, сондай-ақ реттелетін талдау ережелерін реттеу үшін пайдаланылуы мүмкін.



  1. Python декораторлары дегеніміз не?

Python-дағы декораторлар-бұл басқа функцияны дәлел ретінде қабылдайтын және жаңа функцияны қайтаратын жоғары деңгейлі функциялар. Олар функциялар мен сыныптардың мінез-құлқын бастапқы кодын өзгертпестен өзгертуге мүмкіндік береді.

Декораторларды қолданыстағы функцияларға функционалдылықты қосу үшін пайдалануға болады, мысалы, функционалдылықты кеңейту, қателерді өңдеу, кіріс параметрлерін тексеру, логинг және т.б. олар функциялар мен сыныптардың аннотацияларын жасау үшін де қолданыла алады.


Декораторларды " @ " синтаксисі арқылы функциялар ретінде анықтауға болады, мысалы:
@decorator
def my_function():
pass
Бұл мысалда декоратор декоры my_function функциясына қолданылады. Декоратор функцияны дәлел ретінде қабылдайтын және жаңа функцияны қайтаратын жеке функция ретінде анықталуы мүмкін, мысалы:
def decorator(func):
def wrapper():
print("Before the function is called.")
func()
print("After the function is called.")
return wrapper
@decorator
def my_function():
print("Hello, world!")
my_function()
Бұл декор my_function () функциясын орындағанға дейін және кейін хабарлама шығысын қосады. Бұл кодтың нәтижесі:
Before the function is called.
Hello, world!
After the function is called.

  1. Тізім мен кортеж арасындағы айырмашылық.

Тізім мен кортеж - бұл элементтер жиынтығын қамтуы мүмкін Python-дағы екі кіріктірілген деректер құрылымы. Алайда, олардың арасында бірнеше айырмашылықтар бар:

  1. Өзгергіштік: тізімдер өзгермелі (mutable), яғни тізім жасалғаннан кейін элементтерді қосуға, жоюға немесе өзгертуге болады. Кортеждер өзгермейді (мүмкін емес), яғни кортеж жасалғаннан кейін оның элементтерін өзгерту мүмкін емес.

  2. Синтаксис: тізімдер квадрат жақшалардың көмегімен жасалады [], ал кортеждер жақшалардың көмегімен жасалады ().

  3. Өлшемі: тізімдер кез келген өлшемде болуы мүмкін, ал кортеждер әдетте жасалған кезде белгіленген өлшемге ие болады.

  4. Пайдалану: тізімдер деректер жиынын өзгерту немесе өзгерту қажет болғанда, ал кортеждер өзгермейтін деректер жиынын жасау қажет болғанда пайдаланылады.

  5. Өнімділік: кейбір жағдайларда кортеждер тізімдерге қарағанда жылдамырақ болуы мүмкін, өйткені оларды өзгерту мүмкін емес, бұл оларды жадта сақтауды жеңілдетеді.

  6. Әдістер: тізімдерде кортеждерге қарағанда деректермен жұмыс істеудің көбірек әдістері бар. Мысалы, append() және remove () әдістерін тек тізімдермен қолдануға болады.

Тұтастай алғанда, тізімді немесе кортежді пайдалану нақты тапсырмаға және оның деректердің өзгергіштігіне қойылатын талаптарына байланысты. Егер деректер өзгертілуі керек болса, онда тізімді пайдалану керек. Егер деректер өзгермейтін болса, онда кортеж ең жақсы таңдау болуы мүмкін.

  1. Кортежді, мысалы, сөздіктердің кілті ретінде хэштеу.

Егер сіз кортежді сөздік кілті ретінде пайдаланғыңыз келсе, кортежді хэштеу пайдалы болуы мүмкін. Хэштеу кілт сөздігінде мәндерді тез және тиімді табуға мүмкіндік береді, бұл бағдарламаның орындалуын тездетеді.

Хэштеу-бұл ерікті ұзындықтағы еркін кіріс жолын бекітілген ұзындықтағы тұрақты Шығыс хэш кодына түрлендіру процесі. Хэш коды-сөздіктегі мәнді жылдам іздеу үшін пайдалануға болатын сандық мән. Сөздікте қолдану үшін сөздік кілттері хэштелуі керек.


Python-да кортежді хэштеу үшін кірістірілген hash () функциясын пайдалануға болады. Мысалы, егер сізде t кортежі болса, оны хэштеп, сөздік кілті ретінде келесідей пайдалануға болады:
t = (1, 2, 3)
d = {}
d[hash(t)] = 'value'
Кортеж өзгермейтін болуы керек екенін ескеріңіз (мүмкін емес), сондықтан оны хэштеуге және сөздік кілті ретінде пайдалануға болады. Егер кортежде тізімдер немесе сөздіктер сияқты өзгертілетін нысандар болса, оны хэштеу мүмкін болмайды.

  1. Аргументтер мәні бойынша немесе сілтеме бойынша қалай беріледі?

Python-да аргументтер Аргументтің деректер түріне және берілу әдісіне байланысты мәні бойынша да, сілтеме бойынша да берілуі мүмкін.

Сандар, жолдар және кортеждер сияқты өзгермейтін деректер түрлерінің аргументтері мән бойынша беріледі, яғни мәннің көшірмесі функцияға беріледі. Бұл функция ішіндегі аргумент мәнінің өзгеруі функциядан тыс бастапқы Аргументтің мәніне әсер етпейтінін білдіреді.


Тізімдер мен сөздіктер сияқты өзгеретін деректер түрлерінің аргументтері сілтеме арқылы беріледі. Бұл дегеніміз, объектінің өзі оның көшірмесі емес, функцияға беріледі. Функция ішіндегі аргумент мәнінің өзгеруі функциядан тыс бастапқы Аргументтің мәніне әсер етеді.


Мысалы, келесі кодты қарастырыңыз:
def update_list(lst):
lst.append(4)
my_list = [1, 2, 3]
update_list(my_list)
print(my_list)
Бұл кодта my_list тізімі сілтеме арқылы update_list функциясына жіберіледі және функция оны 4 элементін қосу арқылы өзгертеді. Функцияны шақырғаннан кейін, my_list мыналарды қамтиды [1, 2, 3, 4].

Алайда, егер біз өзгермейтін нысанды, мысалы, санды берсек, онда оның функция ішіндегі мәнін өзгерту оның функциядан тыс мәніне әсер етпейді.


def update_number(num):
num += 1
my_num = 1
update_number(my_num)
print(my_num)
Бұл мысалда my_num мәні бойынша update_number функциясына беріледі және функция оны 1-ге арттырады. Алайда, my_num 1-ге тең болып қалады, өйткені функция ішінде my_num өзі емес, num мәнінің көшірмесі өзгертілді.

  1. Dict және List түсінігін түсіндіріңіз?

Dict (сөздік) және List (тізім) - Python-дағы екі негізгі деректер құрылымы.

Тізім-кез келген деректер түрі болуы мүмкін және қайталануы мүмкін элементтердің реттелген жинағы. Тізім элементтеріне 0-ден басталатын индекстер арқылы қол жеткізуге болады. Тізімді құру үшін біз жақшаларды [] қолдана аламыз және элементтерді үтірмен бөле аламыз. Мысалы:


my_list = [1, 2, "three", True, 4.5]
Dict-бұл кілт-мән жұптарының ретсіз жиынтығы. Сөздік кілттері бірегей және өзгермейтін болуы керек (мысалы, жолдар, сандар, кортеждер) және мәндер кез келген деректер түрі болуы мүмкін. Сөздікті құру үшін біз {} жақшаларын қолдана аламыз және кілт-мән жұптарын қос нүкте мен үтірмен бөле аламыз. Мысалы:
my_dict = {"name": "John", "age": 30, "city": "New York"}
Біз сөздіктен мәнді кілт бойынша сілтеме жасау арқылы ала аламыз. Мысалы:
print(my_dict["name"])
Қорытынды:"John"
Біз сондай-ақ тізімдер мен сөздіктердегі элементтерді қосуға, жоюға және өзгертуге болады, мысалы, тізімдер үшін append (), remove (), pop() және сөздіктер үшін update(), del.

  1. Python-да кіріктірілген деректер түрлері қандай?

Python-да келесі деректер түрлері бар:

  1. Сандар (Сандар):

  • Бүтін сандар (integers)

  • Нақты сандар (floating-point numbers)

  • Күрделі сандар (кешенді сандар)

  1. Логикалық мәндер (Boolean):

  • Шын (шындық)

  • Жалған (өтірік)

  1. Жолдар (Жолдар):

  • тырнақшаға алынған таңбалар тізбегі

  1. Тізімдер (Тізімдер):

  • еркін типтегі объектілердің реттелген өзгермелі коллекциялары

  1. Кортеждер (Tuples):

  • еркін типтегі объектілердің реттелген өзгермейтін коллекциялары

  1. Жиындар (Sets):

  • бірегей элементтердің ретсіз жинақтары

  1. Сөздіктер (Сөздіктер):

  • "кілт-мән" жұптары ретінде сақталатын объектілердің реттелмеген, өзгертілетін коллекциялары

  1. NoneType:

  • мәннің жоқтығын білдіретін объектінің жалғыз данасы.

  1. Мутацияланатын және өзгермейтін түрлері бар

Иә, бағдарламалауда мутацияланатын және өзгермейтін деректер түрлері бар.
Мутацияланатын деректер түрлері, әдетте, мәндері жасалғаннан кейін өзгертілуі мүмкін өзгермелі нысандар болып табылады. Бұл дегеніміз, егер мутацияланатын деректер түрі бар айнымалы бағдарламаның бір жерінде өзгертілсе, онда бұл өзгерістер сол айнымалы қолданылатын бағдарламаның басқа бөліктерінде де көрінеді. Мысалы, тізім немесе сөздік деректердің мутацияланатын түрлері болып табылады.

Өзгермейтін деректер түрлерін, керісінше, объект жасалғаннан кейін өзгерту мүмкін емес. Егер өзгермейтін айнымалының мәні өзгерсе, онда жаңа объект жасалады, ал ескісі өзгеріссіз қалады. Бұл дегеніміз, өзгермейтін деректер түрлері бағдарламаның басқа бөліктерінде деректердің кездейсоқ немесе әдейі өзгертілмеуін қамтамасыз етеді. Мысалы, сандар, жолдар мен кортеждер өзгермейтін деректер түрлері болып табылады.



  1. Python - да кіріктірілген мүмкіндіктер.

Python-да бағдарламада өз функцияларын жасамай-ақ қолдануға болатын көптеген кіріктірілген функциялар бар. Төменде Python - дағы кейбір кіріктірілген мүмкіндіктердің тізімі берілген:

  1. print(): деректерді консольге шығару үшін қолданылады.

  2. input (): пайдаланушыдан кірісті консоль арқылы алу үшін қолданылады.

  3. type (): айнымалы түрін анықтау үшін қолданылады.

  4. len (): жолдың, тізімнің, кортеждің және т. б. ұзындығын анықтау үшін қолданылады.

  5. str (): нысанды жолға түрлендіру үшін қолданылады.

  6. Int(): нысанды бүтін санға түрлендіру үшін қолданылады.

  7. float (): нысанды өзгермелі нүкте санына түрлендіру үшін қолданылады.

  8. range (): бүтін сандар тізбегін құру үшін қолданылады.

  9. тізім (): нысандардан тізім жасау үшін қолданылады.

  10. tuple (): нысандардан кортеж жасау үшін қолданылады.

  11. dict (): объектілерден сөздік жасау үшін қолданылады.

  12. set (): нысандар жиынтығын жасау үшін қолданылады.

  13. max (): нысандар тізімінен максималды мәнді анықтау үшін қолданылады.

  14. min (): нысандар тізімінен минималды мәнді анықтау үшін қолданылады.

  15. sum (): Нысандар тізімінің барлық элементтерінің қосындысын анықтау үшін қолданылады.

Бұл пайдалануға болатын көптеген кіріктірілген Python мүмкіндіктерінің бірнешеуі ғана. Python құжаттамасында кіріктірілген Python мүмкіндіктері туралы көбірек білуге болады.

  1. Әр түрлі форматтағы мәліметтермен жұмыс.

Python-бұл әртүрлі форматтағы деректермен жұмыс істеудің әртүрлі әдістерін ұсынатын қуатты бағдарламалау тілі. Мұнда Python көмегімен өңдеуге болатын бірнеше деректер пішімдері, сондай-ақ оларды өңдеу үшін пайдалануға болатын құралдар берілген.



  1. CSV

CSV (Comma Separated Values) - мәндер үтірмен бөлінетін деректер пішімі. CSV файлдары қолданбалар арасында деректерді ортақ пайдалану үшін жиі пайдаланылады. Python-да CSV файлдарымен жұмыс істеу үшін csv кітапханасын пайдалануға болады.
Мысал коды:
import csv
# Чтение CSV-файла
with open('file.csv') as csv_file:
csv_reader = csv.reader(csv_file, delimiter=',')
for row in csv_reader:
print(row)
# Запись в CSV-файл
with open('file.csv', mode='w') as csv_file:
writer = csv.writer(csv_file)
writer.writerow(['John', 'Doe'])

  1. JSON

JSON (JavaScript Object Notation) - қолданбалар арасында деректерді бөлісу үшін қолданылатын деректер пішімі. JSON файлдары көбінесе веб-қосымшаларда серверден клиентке және керісінше деректерді беру үшін қолданылады. Python-да JSON файлдарымен жұмыс істеу үшін json кітапханасын пайдалануға болады.
Мысал коды:
import json
# Чтение JSON-файла
with open('file.json') as json_file:
data = json.load(json_file)
print(data)
# Запись в JSON-файл
data = {'name': 'John', 'age': 30}
with open('file.json', mode='w') as json_file:
json.dump(data, json_file)

  1. XML

XML (eXtensible Markup Language) - қолданбалар арасында деректер алмасу үшін пайдаланылатын деректер пішімі. XML файлдары көбінесе веб-қосымшаларда серверден клиентке және керісінше деректерді беру үшін қолданылады. Python-да XML файлдарымен жұмыс істеу үшін xml кітапханасын пайдалануға болады.
Мысал коды:
import xml.etree.ElementTree as ET
# Чтение XML-файла
tree = ET.parse('file.xml')
root = tree.getroot()
for child in root:
print(child.tag, child.attrib)
# Запись в XML-файл
root = ET.Element('root')
ET.SubElement(root, 'child').text = 'value'
tree = ET.ElementTree(root)
tree.write('file.xml')

  1. Excel

Excel-кестелік деректерді сақтау және өңдеу үшін қолданылатын деректер пішімі. Excel файлдары көбінесе кеңсе деректерін өңдеу қосымшаларында қолданылады. Python-да Excel файлдарымен жұмыс істеу үшін pandas кітапханасын пайдалануға болады.
Мысал коды:
import pandas as pd
# Чтение Excel-файл

  1. Объектіге бағытталған бағдарламалау негізгі түсініктері.

Объектіге бағытталған бағдарламалау (ОP) - бұл деректермен жұмыс істеу үшін деректер мен функционалдылықты қамтуы мүмкін объектілер тұжырымдамасына негізделген бағдарламалау парадигмасы. ОP негізгі ұғымдары:



  1. Сыныптар: бұл объектілердің қасиеттері мен әдістерін анықтайтын үлгілер. Сыныптар ОP негізгі элементтері болып табылады.




  1. Нысандар: бұл қасиеттердің нақты мәндерін қамтитын және осы мәндермен жұмыс істеу әдістерін қолданатын сыныптардың даналары.




  1. Мұрагерлік: бұл бұрыннан бар сыныптар негізінде жаңа сыныптар құруға мүмкіндік беретін тұжырымдама. Жаңа сынып ата-аналық сыныптың қасиеттері мен әдістерін мұра етеді.




  1. Инкапсуляция: бұл тек қоғамдық әдістер мен қасиеттерге қол жеткізуді қамтамасыз ете отырып, сыныпты іске асырудың ішкі бөлшектерін сыртқы әлемнен жасыруға мүмкіндік беретін тұжырымдама.

  2. Полиморфизм: бұл бір кластағы объектілердің контекстке байланысты әр түрлі мінез-құлыққа ие болуына мүмкіндік беретін тұжырымдама, мысалы, объектінің түріне немесе әдіске берілген дәлелдерге байланысты.




  1. Абстракция: бұл оны жүзеге асырудың егжей-тегжейін елемей, сыныптың маңызды қасиеттері мен әдістеріне назар аударуға мүмкіндік беретін тұжырымдама. Абстракция икемді және модульдік бағдарламалар жасауға көмектеседі.




  1. Python-да Абстракция және ыдырау.

Абстракция және ыдырау - күрделі тапсырмаларды жеңілдетуге және Код құрылымын жақсартуға көмектесетін екі маңызды бағдарламалау принципі. Python-да бұл принциптерді әртүрлі тәсілдермен жүзеге асыруға болады.

Python-дағы Абстракция іске асырудың егжей-тегжейін жасыруды және объектілермен жұмыс істеу үшін қарапайым интерфейсті қамтамасыз етуді білдіреді. Мысалы, жадтағы жеке биттерді немесе байттарды тікелей басқарудың орнына, деректерді сақтау және басқару үшін тізім немесе сөздік сияқты дерексіз деректер түрін пайдалануға болады.


Python-дағы ыдырау күрделі тапсырманы қарапайым және түсінікті ішкі тапсырмаларға бөлуді білдіреді. Әрбір ішкі тапсырма жеке функция немесе сынып ретінде жүзеге асырылуы мүмкін. Мысалы, біз деректерді өңдеу бағдарламасын файлдан деректерді оқитын, өңдейтін және нәтижелерді сақтайтын функцияларға бөле аламыз.


Python-да абстракция мен ыдырауды қолдану мысалдары:


Абстракция:


# Использование списка для хранения и управления данными
data = [1, 2, 3, 4, 5]
print(sum(data)) # Выводит сумму элементов списка
print(len(data)) # Выводит количество элементов в списке
Ыдырау:
# Разделение программы на функции для чтения, обработки и сохранения данных
def read_data(filename):
with open(filename, 'r') as f:
data = f.readlines()
return data
def process_data(data):
# Обработка данных
processed_data = [int(d) for d in data]
return processed_data
def save_data(filename, data):
with open(filename, 'w') as f:
for d in data:
f.write(str(d) + '\n')
data = read_data('input.txt')
processed_data = process_data(data)
save_data('output.txt', processed_data)
Мұнда біз деректерді өңдеу бағдарламасын үш функцияға бөлдік: файлдан деректерді оқуға арналған read_data, деректерді өңдеуге арналған process_data және өңделген деректерді файлға сақтау үшін save_data. Әрбір функция бағдарламаны құрылымды және түсінікті ету үшін бөлек ішкі тапсырманы орындайды.



  1. Молдулі Numeric

Numeric модулі-бұл массивтермен және сандық деректер матрицаларымен жұмыс істеуге мүмкіндік беретін Python бағдарламалау тіліне арналған модуль. Ол арифметикалық амалдарды, сондай-ақ сызықтық алгебра амалдарын орындау үшін көптеген функцияларды ұсынады.
Numeric модулі ғылыми есептеу және деректерді талдау мәселелерін шешуге арналған. Онда массивтің нысаны (array) анықталған, ол бір типтегі сандардың көп өлшемді массиві болып табылады. Бұл объект қосу, көбейту, транспозициялау, скалярлық көбейтінділерді есептеу, детерминантты табу және т. б. сияқты массивтік операцияларды тез және тиімді орындауға мүмкіндік береді.

Алайда, Numeric модулі ескіргенін және жаңа жобаларда қолдануға ұсынылмайтынын атап өткен жөн. Оның орнына NumPy, SciPy немесе Pandas сияқты ғылыми есептеулер үшін заманауи және дамыған кітапханаларды пайдалануға болады.



  1. Python-дағы мәтіндермен жұмыс жасайтын кітапханалар.

  2. Python-дағы тұрақты өрнектер.

Тұрақты өрнектер (Regular Expressions) - бұл Python-да мәтіндік деректермен жұмыс істеудің қуатты құралы. Олар іздеуге, алуға мүмкіндік береді

Пайдалану үшін. Онда Регламентпен жұмыс істеуге мүмкіндік беретін функциялар мен әдістер бар


Python-да тұрақты өрнектерді қолданудың бірнеше мысалдары келтірілген:


Жолдағы ішкі жолды іздеу:


import re
string = "The quick brown fox jumps over the lazy dog."
pattern = "fox"
result = re.search(pattern, string)
if result:
print("Substring found.")
else:
print("Substring not found.")

Жолдан мәндерді шығару:


import re

string = "John Doe, 25 years old"


pattern = r"(\w+) (\w+), (\d+) years old"

result = re.search(pattern, string)


if result:


name = result.group(1) + " " + result.group(2)
age = result.group(3)
print("Name:", name)
print("Age:", age)
else:
print("No match")

Ауыстыру подст:


import re

string = "The quick brown fox jumps over the lazy dog."


pattern = "fox"

new_string = re.sub(pattern, "cat", string)


print("Original string:", string)


print("New string:", new_string)
Бұл олардың қолданылуын тереңірек түсіну үшін кейбір мүмкіндіктер.

  1. Python-да веб-қосымшаларды әзірлеу.

  2. Python - да массивтермен жұмыс.

Python-да массивтер тізімдермен (тізім) ұсынылған. Python-дағы тізімдер динамик болып табылады

Тізімді құру үшін жақшалар [ ] және элементтерді үтірмен бөлу қолданылады. Мысалы, сандар тізімін жасайық:


numbers = [1, 2, 3, 4, 5]
second_number = numbers[1]
Сіз сондай-ақ жасай аласыз
first_three_numbers = numbers[:3]
Элементтерді өзгертуге болады
numbers[1] = 10
Тізімнің соңына жаңа элемент қосу үшін Сіз жасай аласызappend (). Мысалы, тізімнің соңына 6 санын қосу үшін сізге қажет
numbers.append(6)
жойылатын элементтің мәнін көрсету арқылы жою үшін. Мысалы, жою үшінremove()
numbers.remove(3)
Тарор () элементті индекс бойынша Алып тастау және оның мәнін қайтару. Мысалы, тізімнің үшінші элементінің мәнін жою және алу үшін жазу керек:
third_number = numbers.pop(2)
Тізімдерді сұрыптау () әдісі арқылы да сұрыптауға болады. Мысалы, тізімді өсу бойынша сұрыптау үшін жазу керек:
numbers.sort()
Тізімдерді + операторы арқылы біріктіруге болады. Мысалы, list1 және list2 екі тізімін біріктіру үшін жазу керек:
new_list = list1 + list2
Массивтермен жұмыс істеу үшін циклдер мен тізім генераторларын пайдалануға болады. Мысалы, 1-ден 5-ке дейінгі сандардың квадраттарының тізімін жасау үшін жазуға болады:
squares = [x**2 for x in range(1, 6)]

  1. Модуль мүмкіндіктері web.py.

  2. Numpy Модулінің мүмкіндіктері.

  3. WWW клиентіне арналған модульдер.

  4. Python-да массив элементтерін шығару.


Достарыңызбен бөлісу:
1   2   3   4




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет