ГЛАВА 2, 3, 4, 5. 2 тарау. Python Негіздері Бадарламаларды жазуа кіріспе
Скачать 242.51 Kb.
|
2 ТАРАУ. Python Негіздері Бағдарламаларды жазуға кіріспе Python бағдарламасы Нұсқаулық жиынтығынан тұрады. Әрбір Нұсқаулық жаңа жолға орналастырылады. Мысалы: 1 print(2 + 3) 2 print("Hello") Python-да шегіністер үлкен рөл атқарады. Дұрыс орнатылмаған шегініс іс жүзінде қате болып табылады. Мысалы, келесі жағдайда қате пайда болады, дегенмен код жоғарыда көрсетілгенге ұқсас болады:
Сондықтан да, жаңа смартфонын нұсқаулықтың алдымен жолдан. Бұл питонның C # немесе Java сияқты басқа бағдарламалау тілдерінен маңызды айырмашылықтарының бірі. Дегенмен, тілдің кейбір құрылымдары бірнеше жолдан тұруы мүмкін екенін есте ұстаған жөн. Мысалы, шартты if дизайны:
Бұл жағдайда, егер 1 2-ден аз болса, онда "Hello"жолы көрсетіледі. Мұнда шегініс болуы керек, өйткені басып шығару нұсқаулығы("Hello") өздігінен емес, if шартты дизайнының бөлігі ретінде қолданылады. Сонымен қатар, шегініс, кодты жобалау жөніндегі нұсқаулыққа сәйкес, 4-ке көбейтілген бос орындардың санын жасаған жөн (яғни 4, 8, 16 және т.б.), егер шегініс 4 ЕМЕС, 5 болса, онда бағдарлама да жұмыс істейді. Мұндай құрылымдар онша көп емес, сондықтан қажет жерде және бос орындарды қоюдың қажеті жоқ жерде көп шатасулар болмауы керек. Тіркелімге тәуелділік Python-бұл регистрге тәуелді тіл, сондықтан print және Print немесе PRINT өрнектері әртүрлі өрнектерді білдіреді. Егер консольге шығару үшін print әдісінің орнына Print әдісін қолдануға тырыссақ:
бізде ештеңе шықпайды. Кодтың бір немесе басқа бөлігін жасайтын белгі үшін түсініктемелер қолданылады. Бағдарламаны тарату және орындау кезінде аудармашы түсініктемелерді елемейді, сондықтан олар бағдарламаның жұмысына әсер етпейді. Python-дағы Пікірлер Блок және кіші. Олардың барлығы тор белгісімен (#) алдын-ала белгіленеді. Блоктық Пікірлер жолдың басында қойылады:
Кіші түсініктемелер тіл нұсқауларымен бірдей жолда орналасқан:
Негізгі функциялары Python бірқатар кіріктірілген функцияларды ұсынады. Олардың кейбіреулері өте жиі қолданылады, әсіресе тіл үйренудің бастапқы кезеңдерінде, сондықтан оларды қарастырыңыз. Ақпаратты консольге шығарудың негізгі функциясы- print() функциясы. Дәлел ретінде біз шығарғымыз келетін жол осы функцияға беріледі:
Егер консольге бірнеше мәндерді шығару қажет болса, онда біз оларды үтір арқылы басып шығару функциясына бере аламыз:
Нәтижесінде барлық берілген мәндер бір жолдағы Бос орындар арқылы желімделеді: Full name: Tom Smith Егер басып шығару функциясы шығыс үшін жауап берсе, онда енгізу функциясы ақпаратты енгізуге жауап береді. Қосымша параметр ретінде бұл функция енгізу шақыруын қабылдайды және айнымалыға сақтай алатын енгізілген жолды қайтарады:
Консольді шығару: Введите имя: Евгений Привет Евгений Айнымалылар және деректер түрлері Айнымалы белгілі бір деректерді сақтайды. Python тіліндегі айнымалы атау алфавиттік таңбадан немесе астын сызу белгісінен басталуы керек және алфавиттік-сандық таңбалар мен астын сызу белгісін қамтуы мүмкін. Сонымен қатар, айнымалының атауы Python тілінің кілт сөздерінің атауымен сәйкес келмеуі керек. Кілт сөздер көп емес, оларды есте сақтау оңай: and, as, assert, break, class, continue, def, del, elif, else, except, False, finally, for, from, global, if, import, in, is, lambda, None, nonlocal, not, or, pass, raise, return, True, try, while, with, yield. Мысалы, айнымалы жасаңыз:
Мұнда "Tom"жолын сақтайтын name айнымалысы анықталған. Пайтонда айнымалы атаудың екі түрі қолданылады: camel case және underscore notation. Camel case айнымалы атаудағы әрбір жаңа сынып бас әріптен басталады дегенді білдіреді. Мысалы:
Underscore notation айнымалы атаудағы сөздер астын сызу белгісімен бөлінетінін білдіреді. Мысалы:
Сондай-ақ, регистрге тәуелділікті ескеру қажет, сондықтан Name және Name айнымалылары әртүрлі нысандарды білдіреді. Айнымалы деректер түрлерінің бірінің деректерін сақтайды. Python-да көптеген мәліметтер бар, олар санаттарға бөлінеді: сандар, реттіліктер, сөздіктер, жиынтықтар: boolean-логикалық мәні шын немесе жалған int-бүтін санды білдіреді, мысалы, 1, 4, 8, 50. float-өзгермелі нүкте санын білдіреді, мысалы, 1.2 немесе 34.76 complex - күрделі сандар str -жолдар, мысалы "Hello". Python 3 жолдары Unicode кодтаудағы таңбалар жиынтығын білдіреді bytes - 0-255 диапазонындағы сандар тізбегі byte array -байттар массиві, bytes-ке ұқсас, олар өзгеруі мүмкін list - тізімі tuple -кортеж set -бірегей объектілердің реттелмеген коллекциясы frozen set -set-пен бірдей, тек өзгерту мүмкін емес (immutable) dict -әр элементтің кілті мен мағынасы бар сөздік Python-динамикалық терілген тіл. Ол берілген мән негізінде айнымалы деректер түрін анықтайды. Сонымен, қос немесе жалғыз тырнақшалардағы жолды белгілеу кезінде айнымалы str түріне ие болады. Бүтін санды тағайындау кезінде Python айнымалы түрін int ретінде автоматты түрде анықтайды. Айнымалыны float нысаны ретінде анықтау үшін оған бөлшек сан беріледі, онда бүтін және бөлшек бөлгіш нүкте болады. Өзгермелі нүкте санын экспоненциалды жазбада анықтауға болады:
Float санында тек 18 маңызды симол болуы мүмкін. Сонымен, бұл жағдайда тек екі таңба қолданылады - 3.9. Егер Сан тым үлкен немесе тым аз болса, онда экспонент көмегімен санды ұқсас белгіге жаза аламыз. Экспоненттен кейінгі сан негізгі санды көбейту керек 10 санының дәрежесін көрсетеді - 3.9. Сонымен қатар, Бағдарлама барысында айнымалы түрін оған басқа типтегі мән беру арқылы өзгерте аламыз:
Type() функциясының көмегімен ағымдағы айнымалы түрін динамикалық түрде білуге болады:
Сандармен операциялар Арифметикалық амалдар Python барлық жалпы арифметикалық амалдарды қолдайды: + Екі санды қосу:
- Екі санды азайту:
* Екі санды көбейту:
/ Екі санды бөлу:
// Екі санның бүтін бөлінуі:
Бұл операция бөлшек бөлігін тастап, бүтін санды бөлу нәтижесін қайтарады ** Дәрежелеу:
% Бөлуден қалдық алу:
Бұл жағдайда қалдықсыз 2-ге бөлінетін к 7-нің ең жақын саны-6. Сондықтан бөлудің қалған бөлігі 7-6 = 1 Бірнеше арифметикалық операцияларды дәйекті пайдалану кезінде оларды орындау олардың басымдығына сәйкес жүргізіледі. Басында үлкен басымдықпен операциялар жасалады. Кему ретіндегі операциялардың басымдықтары келесі кестеде келтірілген. Бұл жағдайда қалдықсыз 2-ге бөлінетін к 7-нің ең жақын саны-6. Сондықтан бөлудің қалған бөлігі 7-6 = 1 Бірнеше арифметикалық операцияларды дәйекті пайдалану кезінде оларды орындау олардың басымдығына сәйкес жүргізіледі. Басында үлкен басымдықпен операциялар жасалады. Кему ретіндегі операциялардың басымдықтары келесі кестеде келтірілген Операциялар Жолдау ** Сол жаққа анықтама * / // % Солдан оңға қарай + - Солдан оңға қарай Келесі өрнек орындалсын:
Мұнда үлкен басымдықпен операция ретінде (5 ** 2) деңгейге көтерілу басталады, содан кейін нәтиже 4 (25 * 4) көбейтіледі, содан кейін қосу (3 + 100) жүреді, содан кейін қайтадан қосу (103 + 7) болады. Операциялардың ретін қайта анықтау үшін жақшаларды пайдалануға болады:
Айта кету керек, бүтін сандар да, Бөлшек сандар да арифметикалық операцияларға қатыса алады. Егер бүтін сан (int) және өзгермелі нүкте (float) бір операцияға қатысса, онда бүтін сан float түріне келтіріледі. Берілген арифметикалық операциялар Бірқатар арнайы операциялар операцияның нәтижесін бірінші операндқа тағайындауға мүмкіндік береді: += Қосу нәтижесін тағайындау -= Шегеру нәтижесін тағайындау *= Көбейту нәтижесін тағайындау /= Бөлу нәтижесін тағайындау //= Бүтін санды бөлу нәтижесін тағайындау **= Санның дәрежесін беру %= Бөлінуден қалған қалдықты беру Операциялардың мысалдары:
Сандарды түрлендіру функциялары Python-да бірқатар кіріктірілген функциялар сандармен жұмыс істеуге мүмкіндік береді. Атап айтқанда, int() және float() функциялары мәнді сәйкесінше int және float түріне келтіруге мүмкіндік береді. Мысалы, бізде келесі код болсын:
Біз "2" + 3 5-ке тең болады деп күтеміз. Алайда, бұл код ерекше жағдай туғызады, өйткені бірінші Сан жолды білдіреді. Бәрі дұрыс жұмыс істеуі үшін int() функциясын қолдана отырып, жолды санға келтіру керек:
Float () функциясы сол сияқты әрекет етеді, ол өзгермелі нүкте санына айналады. Бірақ тұтастай алғанда бөлшек сандармен операциялардың нәтижесі толығымен дәл болмауы мүмкін екенін ескеру қажет. Мысалы:
Бұл жағдайда біз 0.40002 санын аламыз деп күтеміз, бірақ соңында нөлдер қатарынан тағы төрт пайда болады. Немесе тағы бір өрнек:
Бұл жағдайда нәтижені дөңгелектеу үшін round() функциясын қолдана аламыз:
Функцияның бірінші параметрі-дөңгелектелген Сан, ал екіншісі-алынған сан үтірден кейін қанша таңбадан тұруы керек. Санды ұсыну Сандық айнымалының қалыпты анықтамасында ол ондық жүйеде мән алады. Бірақ Python-да ондықтан басқа, біз екілік, сегіздік және он алтылық жүйелерді қолдана аламыз. Екілік жүйеде санды анықтау үшін оның мәні алдында 0 және B префиксі қойылады:
Сегіздік жүйеде санды анықтау үшін оның мәні алдында 0 және O префиксі қойылады:
Он алтылық жүйеде санды анықтау үшін оның мәні алдында 0 және X префиксі қойылады:
Басқа өлшеу жүйелеріндегі сандармен арифметикалық амалдарды да жасауға болады:
Әр түрлі есептеу жүйелеріндегі санды шығару үшін жолда шақырылатын format функциясы қолданылады. Бұл жолға әртүрлі форматтар жіберіледі. Екілік жүйе үшін " {0: 08b}", мұнда 8 саны Сан жазбасында қанша таңба болуы керек екенін көрсетеді. Егер таңбалар Сан үшін талап етілгеннен көп болса, онда қажет емес позициялар нөлдермен толтырылады. Он алтылық жүйе үшін "{0:02x}"пішімі қолданылады. Мұнда бәрі бірдей-санның жазбасы екі таңбадан тұрады, егер бір белгі қажет болмаса, оның орнына нөл енгізіледі. Ал сегізінші жүйеде жазу үшін "{0:02o}"пішімі қолданылады. Скриптің нәтижесі: 15 in binary 00001111 in hex 0f in octal 17 |