
























Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
An overview of Python programming, its popularity among companies, and its basic concepts. Python is widely used in various industries due to its versatility and ease of use. the standard Python interpreters, popular alternatives like Go, and the advantages of Python over other programming languages.
Typology: Study Guides, Projects, Research
1 / 32
This page cannot be seen from the preview
Don't miss anything!

























Орындаған: Жанзаков Ж.Ж Тексерген: Мансурова Г.М. Алматы 2021 ж.
Стандартты Python интерпретаторы C тілінде жазылған және оны қосымша кодпен жақсартуға болады. Python аудармашылары жылдамырақ. Java алғаш шыққан кезде өте баяу болды және оны жылдамдату үшін көп уақыт пен ақша жұмсалды. Python бағдарламалау тілі ешқандай корпорацияға тиесілі емес, сондықтан ол біркелкі жақсарады. A Сіз өте көп уақытты қажет ететін қолданбаны жаза аласыз және не істесеңіз де, Python сіздің қажеттіліктеріңізге сәйкес келмейді. Содан кейін, Ян Холм Alien-де айтқандай, көңіл айтамын. Әдетте C, C++ және java бұл жағдайда балама болып табылады, бірақ жаңарақ бағдарламалау тілі Go (http://golang.org/) (ол Python-ға ұқсайды, бірақ C сияқты жоғары өнімділікке ие). Сіз тап болуы мүмкін ең үлкен мәселе - Python бағдарламасының екі нұсқасының бірін таңдау. Python 2 әрқашан болған сияқты, бұл нұсқа Linux отбасының операциялық жүйелері бар компьютерлерде алдын ала орнатылған. Бұл керемет тіл болды, бірақ мінсіз ештеңе жоқ. Бағдарламалау тілдерінде, көптеген басқа салалардағы сияқты, кейбір қателер үстірт және оңай түзетіледі, ал басқалары қиын. Бұл қиын мәселелердің шешімдері үйлесімсіз: түзетілген тілмен жазылған жаңа бағдарламалар ескі жүйелерде жұмыс істемейді, ал ескі бағдарламалар жаңаларында жұмыс істемейді. Python жасаушы Гвидо ван Россум (https://python.org/~guido) және басқалары күрделі мәселелердің шешімдерін біріктіріп, оларды Python 3 деп атады. Python 2 - өткен, ал Python 3 - болашақ. Python 2-нің соңғы нұсқасы - 2.7, ол ұзақ уақыт бойы қолдау көрсетілетін болады, бірақ тек сонда аяқталады; Python 2.8 ешқашан шығарылмайды. Жаңа әзірлеу Python 3-те жасалады. Ең айқын өзгеріс - басып шығару функциясын шақыру тәсілі. Ең маңызды өзгеріс - Юникод таңбаларын өңдеу. Python тілінде жазылған танымал бағдарламалық құрал бірте-бірте түрлендірілуде.
1 Python туралы 1.1 Негізгі ақпарат. Python - әзірлеушілердің өнімділігін және кодты оқу мүмкіндігін жақсартуға бағытталған жоғары деңгейлі, жалпы мақсаттағы бағдарламалау тілі. Бағдарламалау тілі - бұл компьютерлік бағдарламаларды жазуға арналған ресми белгілер жүйесі. Бағдарламалау тілі программаның сыртқы түрін және оның басқаруымен орындаушы (әдетте компьютер) орындайтын әрекеттерді анықтайтын лексикалық, синтаксистік және семантикалық ережелердің жиынтығын анықтайды. Ерекшеліктер: минималистік синтаксис; оқудың қарапайымдылығы; кең мүмкіндіктер; әртүрлі бағдарламалау парадигмаларын қолдау; түсіндіріледі; динамикалық теру; ашықтық; кросс-платформа; белгілі бір мәселелерді шешетін (Stackless Python, PyPy) немесе оны белгілі бір платформаға біріктіретін баламалы іске асырудың болуы (.NET үшін IronPython, Java үшін Jython); белсенді дамып келеді. Аударма - бұл бағдарламалау тілдерінің бірінде ұсынылған бағдарламаны басқа тілдегі бағдарламаға сәйкес келетін бағдарламаға түрлендіру. Компиляция – жоғары деңгейлі бастапқы тілде жазылған программаны машиналық кодқа жақын төменгі деңгейлі тілдегі баламалы бағдарламаға (абсолюттік код, объект модулі, кейде ассемблер тілі) аудару. Компиляторға арналған кіріс ақпараты (бастапқы код) объектілі-бағытталған тілдегі алгоритмнің немесе бағдарламаның сипаттамасы, ал компилятордың шығысы алгоритмнің машинаға бағытталған тілдегі (объект коды) баламалы сипаттамасы болып табылады. Интерпретация – оператор бойынша (команда бойынша, жол бойынша) талдау, өңдеу және бастапқы бағдарламаны немесе сұранысты дереу орындау (компиляцияға қарағанда, бағдарлама оны орындамай аударылады). Python - түсіндірілетін тіл.
1.3 Артықшылықтары мен кемшіліктері Артықшылықтары: -қарапайымдылық; -оқуға қабілеттілік; -қуатты стандартты кітапхана және үшінші тарап кітапханалары мен модульдерінің үлкен таңдауы; -кодтың қысқалығы және әзірлеушінің уақытын үнемдеу; -басқа тілдердегі кодқа сілтеме жасау мүмкіндігі. Кемшіліктері: -құрастырылған тілдермен салыстырғанда төмен жылдамдық; -Ғаламдық аудармашы құлпы. Модуль – бұл басқа бағдарламаларда қолдануға арналған бастапқы коды немесе оның атаулы үздіксіз бөлігі бар жеке файл ретінде құрастырылған программаның функционалды толық фрагменті. Модульдер күрделі тапсырмаларды модульдік принципке сәйкес кішірек тапсырмаларға бөлуге мүмкіндік береді. Олар әдетте бағдарламашыларға функциялар, класстар, тұрақтылар жиыны түріндегі қайта пайдалануға болатын функционалдылықты (интерфейспен) қамтамасыз ететіндей етіп құрастырылады. Модульдерді пакеттерге және одан әрі біріктіруге болады кітапханалар. Бағдарламалаудағы кітапхана (кітапхана) – бағдарламалық қамтамасыз етуді (БЖ) әзірлеу үшін қолданылатын ішкі бағдарламалар немесе объектілер жиынтығы. Global Interpreter Lock (GIL) - Python, Ruby және JavaScript сияқты кейбір түсіндірілетін бағдарламалау тілдерінде қолданылатын ағынды синхрондау әдісі. GIL жіпке қауіпсіз тәсілінің негізгі кемшілігі параллелизмнің шектелуі болып табылады. GIL көп ядролы және көп процессорлы жүйелерде жұмыс істегенде ең үлкен есептеу тиімділігіне мүмкіндік бермейді. Бұл пайдаланылады, себебі бір ағынды сценарийлер GIL пайдаланған кезде басқа ағынды қауіпсіздік тәсілдерін пайдаланғанға қарағанда әлдеқайда жылдам жұмыс істейді. Python аудармашысының JVM (Jython) және .NET (IronPython) іске асырулары GIL қолданбайды. .
1.4 Python орнату Интерпретатор – интерпретацияны орындайтын бағдарлама (аудармашының бір түрі). Біріктірілген өңдеу ортасы, IDE (Eng. Integrated Development environment) – бағдарламалық қамтамасыз етуді (бағдарламалық қамтамасыз етуді) әзірлеу үшін бағдарламашылар пайдаланатын бағдарламалық қамтамасыз ету жүйесі. Даму ортасы мыналарды қамтуы керек: мәтіндік редактор,компилятор және/немесе интерпретатор немесе онымен біріктіру құралдары,автоматтандыру құралдарын құру,отладчик. Сондай-ақ, IDE мыналарды қамтуы мүмкін: нұсқаларды басқару жүйелерімен біріктіру құралдары,пайдаланушының графикалық интерфейсін жобалауға арналған құралдар. Тілдің ресми сайты: https://python.org PyCharm IDE ресми веб-сайты: http://www.jetbrains.com/pycharm/ PyCharm кәсіби шығарылымы PyCharm қауымдастық шығарылымынан ең алдымен веб-қосымшаны әзірлеуге қолдау көрсетуімен ерекшеленеді. 1.5 Python тілінде алғашқы бағдарламаларды құру, жаттықтыру Жаңа жоба құру. Бастау диалогтық терезесінде Жаңа жоба жасау пәрменін таңдаңыз, жоба түрін таңдаңыз, ол сақталатын каталогқа жолды көрсетіңіз және интерпретаторды таңдаңыз. Әрі қарай, бірінші бастапқы код файлын жасайық. Ол үшін File New мәзір командасын таңдап, сол жақтағы жоба ағашын тінтуірдің оң жақ түймешігімен басып, New командасын таңдаңыз немесе жай ғана Alt+Insert пернелерін басыңыз, содан кейін Python File тармағын таңдап, оның атын енгізіңіз. «Hello, World!» басып шығаратын Python бағдарламасы: print («Hello, World!») Мұнда басып шығару функциясы және " Hello, World!" – жол Жолдар да жалғыз тырнақшаға алынуы мүмкін.
болмаса) түсініктеме болып саналады. Түсініктемелерді аудармашы елемейді және кодты оқитын адамға арналған.
Деректер түрі (типі) - бұл мәндер мен операциялардың жиынтығы. Түр мүмкін мәндерді және олардың мағынасын, әрекеттерін және түр мәндерінің қалай сақталатынын анықтайды. Түр теориясын оқыды. Көптеген бағдарламалау тілдерінің құрамдас бөлігі типтік жүйелер болып табылады, олар типтердің белгілі бір дәрежеде қауіпсіздігін қамтамасыз ету үшін типтерді пайдаланады. Ақпарат нысандарына типті тағайындау операциясы теру деп аталады. Тағайындау және түрдің сәйкестігін тексеру уақытынан бұрын (статикалық теру), жылдам (динамикалық теру) немесе екеуінің комбинациясы арқылы орындалуы мүмкін. Түрлерді «бір рет және мәңгілікке» тағайындауға болады (күшті теру) немесе өзгертуге рұқсат беру (әлсіз теру). Статикалық теру - айнымалы, ішкі бағдарлама параметрі, функция қайтарылатын мән хабарлау кезінде түрмен байланыстырылатын және түрі кейінірек өзгертілмейтін (айнымалы немесе параметр қабылдайтын, және) бағдарламалау тілдерінде кеңінен қолданылатын әдіс функция тек осы түрдегі мәндерді қайтарады). Статикалық терілген тілдердің мысалдары C#, Java, C++, Pascal, Haskell, Scala болып табылады. Кейбір статикалық терілген тілдерде арнайы ішкі жүйелер арқылы динамикалық теруді пайдалану мүмкіндігі де бар. Динамикалық теру - бағдарламалау тілдерінде және спецификация тілдерінде кеңінен қолданылатын әдіс, онда айнымалы айнымалы жарияланған кезде емес, мән тағайындалған кезде түрмен байланыстырылады. Осылайша, бағдарламаның әртүрлі бөліктерінде бір айнымалы әртүрлі типтегі мәндерді қабылдай алады. Динамикалық терілген тілдердің мысалдары Smalltalk, Python, Ruby, PHP, Perl, JavaScript, Lisp, Erlang болып табылады. Классификациялардың біріне сәйкес бағдарламалау тілдері бейресми түрде күшті (қатаң) және әлсіз типтелген (ағылшын тілі күшті және әлсіз терілген), яғни күшті немесе әлсіз типті жүйеге бөлінеді. Бұл терминдер бір мағыналы түсіндірілмейді және көбінесе белгілі бір тілдің артықшылықтары мен кемшіліктерін көрсету үшін қолданылады. Белгілі бір типті жүйелерді «күшті» немесе «әлсіз» деп атауға әкелетін нақтырақ түсініктер бар. «Күшті» және «әлсіз» теру - бұл тілді жобалауда қабылданған көптеген шешімдердің жемісі. Дәлірек айтқанда, тілдер келіссөздер қауіпсіздігі мен жадқа қол жеткізу қауіпсіздігінің болуы немесе болмауымен және мұндай басқарудың (статикалық немесе динамикалық) сипаттамалық уақытымен сипатталады. Типтік жүйе, егер ол типті сәйкестендірумен байланысты тексерілмеген орындалу уақыты қателерінің мүмкіндігін жойса, күшті деп аталады. Қатты терілген тілдердің мысалдары Haskell, Scala, Java болып табылады. Теру қабілеті нашар тілдердің мысалдары C, JavaScript, PHP болып табылады. Python - күшті динамикалық теру мүмкіндігі бар тіл. Бағдарламалаудағы тұрақты шама – бұл қарастырылып отырған бағдарламамен өзгертілмейтін немесе тыйым салынған деректерді шешу тәсілі. Атаулы константаларды пайдалану - бұл «сиқырлы сандарды» пайдаланудан аулақ болуға мүмкіндік беретін бағдарламалардың сенімділігі
мен қатесіздігін арттыратын әдіс. Python-да тұрақты мәндерді жариялауға арналған жеке синтаксис жоқ. Оларды бас әріптермен (MY_CONSTANT) жазылған идентификаторлар деп атаған жөн, ал Python тіліндегі айнымалылар кіші әріптермен (my_variable) атаулармен жарияланған. Идентификатор дегеніміз - объектіге сілтеме жасауға болатын атау. Ол бас және кіші әріптерден тұруы мүмкін (таңбалары UTF-8 код кестесінде болатын кез келген тіл, бірақ ағылшын тілінен басқа тілдерді пайдалану өте нашар нысан), сандар, астын сызу, саннан басталмауы керек және сақталған кілт сөздермен бірдей болыңыз: False class finally is return None continue for lambda try True def from nonlocal while and del global not with as elif if
2.2 Арифметикалық амалдар Сандармен амалдар: x+y сома x-y айырма x*y жұмыс x/y жеке x // y бүтін санға бөлу операциясы x % y Бөлімнің қалдығы
mathtrunc(x) x нақты санының бөлшек бөлігін алып тастаңыз, бүтін санды береді математикалық қабат(x) берілген нақты саннан аспайтын ең үлкен бүтін сан (деректер түрі ретінде емес, математикалық мағынада бүтін сан) math.ceil(x) берілген нақты саннан үлкен немесе оған тең ең кіші бүтін сан math.pi, math.e тұрақтылар π, e математикалық күнә, math.cos т.б. математикалық функциялар; олардың толық тізімін құжаттамада немесе аудармашы консолінде теру арқылы табуға болады: импорттық математика директор (математика) Логикалық және салыстыру операциялары Логикалық операциялар x немесе y егер х жалған болса, онда у, әйтпесе х x және y егер х жалған болса, онда х, әйтпесе у x емес егер x жалған болса, онда True, әйтпесе False Салыстыру операциялары x < y x y-ден қатаң түрде аз x > y x y-ден қатаң үлкен x <= y x у-дан кіші немесе тең x >= y x у-дан үлкен немесе оған тең x == y x тең у x != y x у-ға тең емес x - у x және y бірдей нысан
input(prompt) немесе input() Егер шақыру параметрі көрсетілсе, онда ол түсіндірме мәтін, енгізуге шақыру ретінде көрсетіледі. Функция пайдаланушы мәтін жолын енгізгенше, оны оқып, қайтарғанша бағдарламаның орындалуын кідіртеді. Ол дәл жолды, яғни str түрінің мәнін қайтарады, сондықтан санды енгізу қажет болса, оның мәтіндік көрінісінен санды құру үшін жоғарыда талқыланған функциялардың бірін пайдалану керек.
сандарды генерациялау әдісі «енгізілген деректер» тізіміне енгізілгенде, ықтималдық алгоритм әдеттегінің кіші түріне айналады. Түсініктілік – алгоритм тек орындаушыға қолжетімді және оның командалық жүйесіне кіретін командаларды қамтуы керек. Аяқтау (шектілік) – дұрыс көрсетілген бастапқы деректермен алгоритм жұмысты аяқтап, нәтижені қадамдардың шектеулі санымен беруі керек. Бұқаралық сипат (әмбебаптық). Алгоритм бастапқы деректердің әртүрлі жиындарына қолданылатын болуы керек. Тиімділік – алгоритмді белгілі нәтижелермен аяқтау. Алгоритмде қателер бар, егер ол дұрыс емес нәтижелерге әкелсе немесе мүлде нәтиже бермесе. Кез келген жарамды енгізу үшін дұрыс нәтижелерді шығаратын алгоритм қатесіз болады. Ең қарапайым алгоритмдердің түрлері: Сызықтық алгоритм – уақыт бойынша ретімен бірінен соң бірі орындалатын командалар (нұсқаулар) жиынтығы. Тармақталу алгоритмі - бұл ең болмағанда бір шартты қамтитын алгоритм, нәтижесінде алгоритмнің бірнеше параллель тармақтарына бөлуді жүзеге асыруға болады. Циклдік алгоритм – жаңа бастапқы деректерде бір әрекеттің (бірдей операциялардың) бірнеше рет қайталануын қамтитын алгоритм. Көптеген есептеу әдістері мен опцияларды санау циклдік алгоритмдерге қысқартылған. Бағдарлама циклі – белгілі бір шарт орындалғанға дейін бірнеше рет (жаңа бастапқы деректер үшін) орындалатын командалар тізбегі (қатар, цикл денесі). Сызықтық алгоритмдер бірінен соң бірі орындалуы керек командалардың бірізді жиынтығынан тұрады. Дәл осындай алгоритмдерді жүзеге асыратын бағдарламалар өткен сабақта жасалған болатын. Тармақталған алгоритмде сол немесе басқа әрекеттер тізбегі орындалатынына байланысты шарттар бар. Олардың әрқайсысы өз кезегінде бұтақтарды қамтуы мүмкін (бірақ қажет емес).
сипатталады. Python-да мұндай құрылыс if-else операторы арқылы жүзеге асырылады: if шарт: мәлімдемеблок else: мәлімдемеблок Егер шарт ақиқат болса, онда бірінші блоктың операторлары орындалады, әйтпесе - екіншісі. Мысал ретінде жоғарыдағы блок-схемадағы алгоритмнің орындалуын қарастырыңыз: x = int(input('x = ')) if x > 0: y=x0, else: y=x print(y) if ішіндегі оператор блоктары кез келген операторларды және олардың ретін қамтуы мүмкін болғандықтан, if операторларын кірістіруге болатыны анық. Мысалы: if 0 < x < 7: print('X мәні берілген ауқымда, жалғастырыңыз') y=2*x- if y < 0: print('y мәні теріс') басқа: егер y > 0: print('y мәні оң') else: print('y=0') if-elif-else операторлары Соңғы мысалда екінші кірістірілген if, біз бірнеше шарттарды кезекпен тексеретін жағдайды көреміз (бұл жағдайда y теріс, оң немесе нөлге тең). Жалпы, мұны былай жазуға болады: if 1-шарт: командалар else: if 2-шарт: командалар else:
3-шарт болса: командалар ... else: if N шарты: командалар Н else: командалар Н Бұл әдіс шартты каскад деп аталады. Мұндай тексеруді орындау қажет болатын жағдайлар өте жиі кездеседі, бірақ сіз шартты мәлімдемелер каскады біршама оқылмайтын болып көрінетінін және оны жазу кезінде шатастыруға оңай екенін көруге болады. Әртүрлі бағдарламалау тілдерінде бұл мәселені шешудің әртүрлі тәсілдері бар. Синтаксисті C (C, C++, Java, C# және т. Өрнектің мәніне байланысты ол код тармақтарының бірін орындайды. Оның кемшілігі ол жүзеге асырылатын көптеген тілдерде (ерекшеліктер - C#, JavaScript) басқару өрнегі тек бүтін типті болуы мүмкін, ал ауысу шарттары оның мәнін белгілі бір тұрақтыларға теңдігін тексере алады. Көп жағдайда бұл жеткілікті, бірақ басқаларында if операторларының каскадын қолдануға тура келеді. Haskell немесе F # сияқты функционалдық бағдарламалау тілдері өте күшті үлгі сәйкестігіне ие. Python-да бұл мәселенің өте қарапайым, бірақ икемді және ыңғайлы шешімі бар: бірнеше шарттары бар тармақ операторы. if 1-шарт: операторлар elif шарты 2: операторлар elif жағдайы 3: операторлар ... else: операторлар Н (if операторының қалыпты формасындағы сияқты, мұнда else тармағы міндетті емес).