питон. Питон (Python) тілінде программалау 1 дәріс – Python тіліне кірі. Питон (Python) тілінде программалау 1 дріс Python тіліне кіріспе
Скачать 50.79 Kb.
|
') |
Питон тілінің атқаратын қызметі және қолданылуы, қысқаша даму тарихы
Питон тілінің нұсқалары
Тілдің жұмыс ортасы
Питон тілінде алғашқы қарапайым программа құру
Гэддис Т. Начинаем программировать на Python. Пер. с англ. -СПб.: БХВ-Петербург, 2019. -768 с.
Бэрри Пол. Изучаем программирование на Python. -Пер с англ. -М.: Изд-во «Э», 2017. -624 с.
Васильев А. Н. Python на примерах. Практический курс по программированию. -СПб.: Наука и Техника, 2016. -432 с.
Лутц М. Изучаем Python, -4-е изд.: Пер. с англ. -СПб.: Символ-Плюс, 2011. -1280 с.
Рамальо Л. Python. К вершинам мастерства. -Пер. с англ. –М.: ДМК Пресс, 2016. -768 с.
Шолле Ф. Глубокое обучение на Python. — СПб.: Питер, 2018. -400 с.:
https://www.python.org/ - ресми python сайты
www.netacad.com – Cisco Corp. фирмасының қосымша сайты
https://pythontutor.ru/lessons/inout_and_arithmetic_operations/ - электронный учебник http://www.opensource.org/licenses/mitlicense.php - лицензии по Python
1. Питон тілінің атқаратын қызметі
Питон - объектіге бағытталған жоғары деңгейлі, динамикалық программалау тілі, ол интерпретатор арқылы жұмыс істейді. Оның құрамындағы мәліметтер құрылымы мен олардың дина-микалық түрде типтелуі қолданбалы программалар жазуға өте ыңғайлы болып саналады [1].
Python - интерпретируемый, объектно-ориентированный язык программирования высокого уровня с динамической семантикой. Его встроенные структуры данных высокого уровня в сочетании с динамической типизацией и динамической привязкой делают его очень привлекательным для создания прикладных программ [1].
Питон тілінің даму жолы
Питон – жалпы мақсаттағы жоғары деңгейдегі программалау тілі. Ол 1991 жылы пайда болған, оны алғаш рет 1991 ж. жасап шығар-ған Guido van Rossum (Гидо ван Россум) деген маман болатын. 2018 жылдың шілде айында Ван Россум 30 жылдай істеген көш-басшылық қызметінен кетті.
Python - интерпретируемый высокоуровневый язык програм-мирования общего назначения. Язык Python был создан Guido van Rossum-ом и впервые выпущена в 1991 году. В июле 2018 года Ван Россум ушёл с поста лидера в языковом сообществе после 30 летней работы.
Питон тілінің даму жолы
Питон (Python) тілін жасау 1980 ж. соңында голланд институты CWI (Математика және информатика орталығы, голл. Centrum Wiskunde & Informatica) қызметкері Гвидо ван Россум (ағыл. Guido van Rossum) бастауымен, ABC тілі негізінде жасалды. 1991 ж ақпанда Гвидо тіл жайлы алғашқы мәліметін жариялаған болатын ( группа новостей - alt.sources).
Питон тілінің даму жолы
Python тілінің даму кезеңдері | |
Шыққан мерзімдері | Python тілі нұсқасы (шығу мерзімі) |
Python 0.9.0 (1991-02) | - |
Python 0.9.0 (1991-02) | - |
Python 2.x (2000-10-16) | Python 2.7.11 (2015-12-05) |
Python 3.x (2008-12-03) | Python 3.4.5 (2016-06-27) |
| Python 3.5.2 (2016-06-27) |
| Python 3.6.1 (2017-03-21) |
Python тілі неге кең таралған?
Бұл тіл интернетте тегін таратылады:
Кітапханасы өте бай, мүмкіндіктері мол
Питон барлық аймақтарда қолданыс тапты:
Web қосымшаларын жасайды
Мәліметтер базасымен жақсы жұмыс істей алады
Үстелдегі дербес компьютерлерде жеңіл программаланады
Мәліметтерді талдау ісінде де қолданылады
Бейнелер мен суреттерді жақсы өңдейді
Объектіге бағытталған программалауды сүйемелдейді
Интерактивті түрде жұмыс істеуге де ыңғайлы болып табылады
2. Питон нұсқалары (версиялары)
Питон тілінің кең пайдаланылатын нұсқалары 2.7 … 3.6.
Кез келген нұсқасын пайдалана аласыз, оны өзіңіз қалауыңызға болады.
Осы нұсқалардың айырмашылығы неде?
Олардың СИНТАКСИСІ және ішкі функциялары әртүрлі болып келеді
Python 2.7.*
Python 3.6.*
Питон нұсқаларын қолдану
Питон 2.x нұсқалары ескірген, қазіргі қолданыстағысы соңғы 3.х нұсқалары.
Бірақ Питон 3.x нұсқаларының аздаған кемшіліктері бар, кітапханалары үлкейген сайын, сүйемелденуі қиындап барады, Linux және Mac жүйелері әлі де 2.x нұсқаларын пайдаланып келеді
3.x нұсқалары компьютер жадын өте тиімді пайдаланады
Келесі аптаға шейін келесі сайт мәліметтерімен танысып шығыңдар: https://wiki.python.org/moin/Python2orPython3
3. Питон тілін қолдану ортасы
Common Python ортасынан керекті программаларды жүктеп алу: Ресми бастапқы программалар (релиздер) Python, IDLE және Python қоршаулары (утилиттері)
Ұсынылатын нұсқалар 2.7.x ... 3.6.x
MS DOS жүйесінің CMD командалық жолын пайдалану арқылы
cmd командаларын іске қосып, "python" тіліне кіру қажет
Программа жазу құралдары:
Web ресурстар – www.pythonanywhere.com – тегін кіруге болатын серверден программалар көшіріп алу
PyCharm ортасы - https://www.jetbrains.com/pycharm/
Кәсіби программалар жасау үшін: Jupyter - http://jupyter.org/
Жылдам істейтін Питон консолын және интерпретаторларды пайдалану
Тілді қолдану орталары
IDLE
CMD
Тілді қолдану орталары
PyCharm
Jupyter Notebook
Алғашқы қарапайым программа
lec1.py - программа нәтижесін шығару
Алғашқы қарапайым программа
1-мысал bax1.py - файл аты
a = 24 + 2 # Қосу b = 2 - 20 # Азайту c = 12 * 6 # Көбейту d = 12/1.2 # Бөлу e = 34**2 # Дәрежелеу e = 34*34 print("a-->", a) print("b-->", b) print("c-->", c) print("d-->", d) print("e-->", e)
Нәтижесі:
a--> 26
b--> -18
c--> 72
d--> 10.0
e--> 1156
Қорытынды (резюме)
Питон жылан емес екен (фильм аты)
Питон басқа программалау тілдеріне қарағанда, жеңіл игеріледі, қысқа жазылады
Жалпы 2 нұсқасы (версиясы) бар екен
IDLE, Shell, CMD, Jupyter Notebook, PyCharm, Jupyter Notebook, www.pythonanywhere.com, PyCharm, т.с.с. программа құру орталарында жұмыс істей аламыз
Енді іске кірісіп, программа құруды бастайық
Сонымен, аяқтаймыз. Тыңдағандарыңызға рахмет!
Егер басқа үй жануарларыңыз болмаса, Питонды бір байқап көрейік.
Python тілінде программалау
2 дәріс – Жалпы мәліметтер
Бөрібаев Б.
b.buribaev@gmail.com
Мехмат ғимараты, 229 бөлме
Сұрақтар
print () функциясы
Шығарылатын мәліметтерді форматтау
If-else операторы және математикалық операторлар
Мәліметтер енгізу
Кодтарға комментарийлер беру
Программа коды мысалдары
print () функциясы
Бұл Питон тілінің ең жиі қолданылатын функциясы
Тілдің құрамдас ішкі (стандартты) функциясы
print "Some Text" – python 2.7.*
print("Another Text") – python 3.6.*
Аргументтері:
print(*object, sep="", end='\n', file=sys.stdout, flush=False)
Мысал:
print("Кім маған ", " 1000 теңге бере алар екен", sep="дәл қазір", end="?!")
Соңғы жол нәтижесі:
Кім маған дәл қазір 1000 теңге бере алар екен?!
Мәлімет шығару форматтары
Сіз шығарылатын мәліметті дұрыстап рәсімдей аласыз.
Оны қалай істеуге болар екен?
Оның бірнеше тәсілі бар:
1-мысал:
name = "Азат"
print("Танысайық, менің атым - %s" % name)
Нәтижесі
... /PycharmProjects/bb/venv/btanis.py
Танысайық, менің атым - Азат
Process finished with exit code 0
2-мысал:
2-мысал:
name = "Азат" surname = "Ғаниұлы" print("Менің толық аты-жөнім - %s %s" % (surname, name))
3-мысал:
a = 10 b = 20 print("%i және %i қосындысы - " % (a,b),a+b)
Мәлімет шығару форматтары
10 және 20 қосындысы - 30
Менің толық аты-жөнім - Ғаниұлы Азат
4-мысал:
4-мысал:
.format(...) әдіс
print("Оқу {1} болашақта {0} бола ма?".format("пайдалы ", "сендерге"))
Тапсырма: Кітаптардан .format() туралы толық оқып, келесі сабақта айтып бересіңдер.
Форматтардағы % таңбасы жайлы берілген түсініктер түйіні
Мұның толық кестесі келесі слайдта
i – int | # бүтін сан |
d – signed int decimal | # таңбалы ондық сан |
c – character | # таңба, символ |
f – float s - string | # нақты, жылжымалы нүктелі сан # сөз тіркесі (строка - тіркес) |
Мәлімет шығару форматтары
Оқу сендерге болашақта пайдалы бола ма?
% таңбасы арқылы түрлендіру кестесі
Түрлендіру таңбасы | Түсініктемесі |
d | Таңбалы ондық сан |
i | Таңбалы ондық сан |
o | Таңбасыз сегіздік сан |
u | 'd' таңбасының бұрынғы ескі эквиваленті, яғни таңбалы ондық сан |
x | Таңбасыз он алтылық сан (кіші әріптер, төменгі регистр) |
X | Таңбасыз он алтылық сан (бас әріптер, жоғарғы регистр) |
e | Жылжымалы үтірлі экспоненциал формат (кіші әріптер) |
E | Жылжымалы үтірлі экспоненциал формат (бас әріптер) |
f | Жылжымалы нүктелі ондық сан форматы |
F | Жылжымалы нүктелі ондық сан форматы |
g | Егер дәреже -4-тен артық болса немесе дәлдігі төмен болса, «e» сияқты, әйтпесе «f» форматы секілді |
G | Егер дәреже -4-тен артық болса немесе дәлдігі төмен болса, «E» сияқты, әйтпесе «F» форматы секілді |
c | Бір символ (бүтін санды немесе символдардың бір жолын қабылдайды |
r | repr () -ді пайдаланып, кез келген объектіні түрлендіреді |
s | str () -ді пайдаланып, кез келген объектіні түрлендіреді |
% | Ешқандай аргумент түрлендірілмейді, нәтижесінде «%» символы алынады |
Мәліметтер арасын ажырату символдары
5-мысал: жай бос орын таңбасымен бөлу
print('Бір','Екі','Үш')
6-мысал: нүктелі үтір (;) таңбасымен бөлу
print('Бір','Екі','Үш', sep=';')
7-мысал: басқаша (
Балл мөлшері | Әріптік бағасы |
90 – 100 | A |
70 – 89 | B |
60 – 69 | C |
50 – 59 | D |
0 – 49 | F |
if-elif нұсқаулары (шартты өрнектер)
A = 90; B = 70 C = 60; D = 50 # Қолданушы балл енгізеді ball = int(input('Балл мөлшерін енгізіңіз: ')) # Баллдың әріптік баламасын анықтау if ball >=A: print('Әріптік баға - A') elif ball >=B: print('Әріптік баға - B') elif ball >= C: print('Әріптік баға - C') elif ball >= D: print('Әріптік баға - D') else: print('Әріптік баға - F')
Практикалық жұмыс
1. екі айнымалыға сандық мәндер меншіктеледі;
2. егер бірінші айнымалының мәні екіншісінен артық болса, онда айнымалылар мәндерінің айырмасын (біріншісінен екіншісін азайту) табыңыздар, нәтижесін үшінші айнымалыға меншіктеңіз-дер;
3. егер бірінші айнымалының мәні екіншісінен кіші болса, онда үшінші айнымалы екеуінің қосындысына тең болады;
4. қалған барлық жағдайларда, үшінші айнымалыға бірінші айнымалы мәнін меншіктеңіз;
5. экранға айнымалылар мәндерін шығарыңыздар.
Практикалық жұмыс
A және В бүтін сандары берілген. Егер A < B болса, А-дан В-ға дейінгі барлық сандарды өсу ретімен, кері жағдайда, оларды кему ретімен экранға шыарыңыз.
A және В бүтін сандары берілген, A>B. А-дан В-ға дейінгі барлық тақ сандарды кему ретімен экранға шығарыңыз. Бұл есепті if операторын қолданбай шығаруға болады.
10 бүтін сан берілген. Солардың қосындысын табу керек. Осы прог-рамманы айнымалылардың ең аз санын қолдана отырып шығаруға тырысыңыз.
Берілген n натурал санының факториалын (n!) табу қажет. Мұнда математикалық math кітапханасын қолдануға болмайды.
Практикалық жұмыс
Берілген n натурал саны бойынша келесі қосындыны
s = 1!+2!+3!+...+n!1!+2!+3!+...+n!
табу керек. Бұл есепте тек бір ғана циклді қолдануға болады.
Mұнда math кітапханасын қолдануға да болмайды.
Maтематикалық операторлар
Операциясы | Синтаксисі | Функциясы |
Қосу | a + b | add(a, b) |
Біріктіру | seq1 + seq2 | concat(seq1, seq2) |
Containment Test | obj in seq | contains(seq, obj) |
Бөлу | a / b | truediv(a, b) |
Бөлу (бүтін бөлінді алу) | a // b | floordiv(a, b) |
ЖӘНЕ (биттер үшін) | a & b | and_(a, b) |
Bitwise Exclusive Or | a ^ b | xor(a, b) |
ТЕРІСТЕУ (биттер үшін) | a | invert(a) |
НЕМЕСЕ (биттер үшін) | a | b | or_(a, b) |
Дәрежелеу | a ** b | pow(a, b) |
Identity | a is b | is_(a, b) |
Identity | a is not b | is_not(a, b) |
Тізім элементін өзгерту | obj[k] = v | setitem(obj, k, v) |
Тізім элементін өшіру | del obj[k] | delitem(obj, k) |
Тізім элементін индекстеу | obj[k] | getitem(obj, k) |
Солға жылжыту (биттер) | a << b | lshift(a, b) |
Қалдық табу | a % b | mod(a, b) |
Операциясы | Синтаксисі | Функциясы |
Көбейту | a * b | mul(a, b) |
Матрицалық көбейту | a @ b | matmul(a, b) |
Терістеу (арифметикалық) | -a | neg(a) |
Терістеу (Логикалық) | not a | not_(a) |
Оң таңбалы | +a | pos(a) |
Оңға жылжыту | a >> b | rshift(a, b) |
Тізім бөлігін орнату | seq[i:j] = values | setitem(seq, slice(i, j), values) |
Тізім бөлігін өшіру | del seq[i:j] | delitem(seq, slice(i, j)) |
Тізім бөлігін қиып алу | seq[i:j] | getitem(seq, slice(i, j)) |
Тіркесті форматтау | s % obj | mod(s, obj) |
Азайту | a - b | sub(a, b) |
Дұрыстығын тесеру | obj | truth(obj) |
Реттеу | a < b | lt(a, b) |
Реттеу | a <= b | le(a, b) |
Тең екенін анықтау | a == b | eq(a, b) |
Тең емес екенін анықтау | a != b | ne(a, b) |
Реттеу | a >= b | ge(a, b) |
Maтематикалық операторлар (жалғасы)
Мәліметтерді енгізу
Мәліметтерді енгізу үшін ішкі "input" деп аталатын функцияны қолдануға болады:
Мысалы:
a = input("Қолданушыдан бір нәрсе енгізуді сұраңыз ") (python 3.*)
Тек сөз тіркесін (string) қайтарады
b = raw_input("Қолданушыдан бір нәрсе енгізуді сұраңыз ") (python 2.*)
Бұл да тек сөз тіркесін (string) қайтарады
b = input("Қолданушыдан бір нәрсе енгізуді сұраңыз ") (python 2.*)
Енгізілген мәліметтер типін қайтарады
Мәліметтерді енгізу
Пернелерден мәліметтер енгізу - input("Бірдеңе енгіз:")
Программа жұмысы тоқталады, сол сәтте бір мән енгізіп, Enter бассақ, жұмыс ары қарай жалғасады.
Мысал:
name = input("Атың кім?")
print('Сәлем, ' + name)
jauap = input(" Python үйренгің келе ме? (Иә/Жоқ) ")
if jauap = "Иә" :
print(" онда дос боламыз, программа құрамыз...")
elif jauap == "Жоқ" : print(" онда 'Қош бол!' үйіңе қайт...") else : print("Не деп отырсың? Тұр орныңнан...")
Атың кім? Бекен
Сәлем, Бекен
Python үйренгің келе ме? (Иә/Жоқ) Иә
онда дос боламыз, программа құрамыз...
Атың кім? Секен
Сәлем, Секен
Python үйренгің келе ме? (Иә/Жоқ) Жоқ
онда 'Қош бол!' үйіңе қайт...
Атың кім? Төкен
Сәлем, Төкен
Python үйренгің келе ме? (Иә/Жоқ) Білмедім
Не деп отырсың? Тұр орныңнан...
Кодқа комментарийлер қосу
Кодқа комментарий қосу программалаудың жақсы тәсілі
Комментарийлер сіздің кодыңызды басқалардың (бірігіп жұмыс істейтін мамандардың) түсінуін жеңілдетеді
Кодқа комментарийлер қосу үшін келесі тәсілдерді қолданыңыз:
# - осы таңбадан (шарп) басталатын комментарий жол соңында тұрады
''' сөйлемдер ''' – үш жалқы тырнақшамен басталып, үш жалқы тырнақшамен аяқталатын күрделі комментарийлер, бұлар бірнеше жолдардан тұратын түсініктеме мәтіндер түрінде болады
Сөз тіркестері
Python-да сөз тіркестерін (тіркестерді) де салыстыруға болады. Мысалы:
name1 = 'Mary'
name2 = 'Mark'
if name1 == name2:
print ('Аттар бірдей.')
else:
print ('Аттар бірдей ЕМЕС.')
'Mary' мен 'Mark' бірдей емес, сондықтан else бөлігі 'Аттар бірдей ЕМЕС.' деген нәтиже береді.
Сөз тіркестері
Келесі программа құпиясөз (пароль - password) енгізуді сұрайды, сонан соң оның бұрыннан сақталған 'koseu' сөзімен бірдей екендігі анықталады.
# Қолданушыдан құпиясөз енгізуді сұрау password = input('Құпиясөз енгізіңіз: ') if password == 'koseu': print ('Бәрі дұрыс. ') else: print ('Құпиясөз дұрыс емес.')
Нәтижесі:
Құпиясөз енгізіңіз: koseu
Бәрі дұрыс.
Сөз тіркестері
A = 90; B = 70; C = 60; D = 50 # Қолданушы балл енгізеді ball = int(input('Балл мөлшерін енгізіңіз: ')) if ball >=A: print('Әріптік баға - A') elif ball >=B: print('Әріптік баға - B') elif ball >= C: print('Әріптік баға - C') elif ball >= D: print('Әріптік баға - D') else: print('Әріптік баға - F')Нәтижесі:
Балл мөлшерін енгізіңіз: 85
Әріптік баға - B
Сөз тіркестері
ASCII кодтары символдарды реттеп орналастырады. "А" символы "В" символының алдында тұрады (А – 65, В – 66), ал ол "С" символының алдында (С - 67), т.с.с.
Программа символдарды салыстырғанда, олардың кодтарын салыстырады, мысалы, мынадай if:
if 'а'< 'b': print ('а әрпі b әрпінен кіші ')
дұрыс жазылған шарт, яғни ‘a’ – 97, ал ‘b’ – 98 болып табылады.
A-Z кодтары 65 пен 90 аралығында,
ал a-z 97 мен 122 аралығында орналасқан.
Мысалдар орындау
a = 54321.6789 print('a санының мәні = ',format(a,'10.2f')) # 10.2 # a санының мәні = 54321.68 ұзындығы – 10, бөлшегі - 2 print(format(123456789,'14,d')) # ұзындығы – 14 цифр # 123,456,789Нәтижесі: a санының мәні = 54321.68
123,456,789
Мысалдар орындау
# Төмендегі нақты (бөлшек) сандар # нүкте бойынша тураланып, бір бағанаға шығарылады. num1 = 127.899 num2 = 3465.148 num3 = 3.776 # Сандар ені - 7 таңба,дәлдігі,яғни бөлшегі 2 - таңба print(format(num1,'7.2f')) print(format(num2,'7.2f')) print(format(num3,'7.2f'))Нәтижелері:
127.90
3465.15
3.78
Мысалдар орындау
Бүтін сандарды форматтау
format функциясы бүтін сандарды да форматтайды. Оның форматын жазудың екі ерекшелігі бар:
тип көрсеткіші ретінде d символы жазылады;
дәлдігі көрсетілмейді.
123456 санын форматсыз жазайық:
print(format(123456, 'd'))
Ал енді сол санның мыңдықтарын үтірмен бөліп жазайық:
print(format(123456, ',d'))
Нәтижесі: 123456
Нәтижесі: 123,456
Мысалдар орындау
Нақты сандарды пайыз (%) түрінде форматтап шығару
Мұнда f орнына тип көрсеткіші ретінде % символы қолданылады. % символы санды 100-ге көбейтіп, оның соңына % таңбасын қосып жазады. Төменде мысал келтірілген:
print(format(0.5, '%'))
Дәлдігін нөл арқылы берсек, нәтижесі бүтін сан болады:
print(format(0.5, '.0%'))
Нәтижесі: 50.000000%
Нәтижесі: 50%
Қорытынды
Сонымен Питон жылан емес (бірақ қашса қуып жетіңіз)
Енді print() функциясын дұрыс қолданатын болдыңыз
Питондағы шартты операторларды жазуды үйрендіңіз
Питондағы математикалық операторларды да игердіңіз
Мәліметтерді пернетақтадан енгізе алатын болдыңыз
Бүгінгі дәріс аяқталды. Тыңдағандарыңызға рахмет!
Егер үйде мысық , күшіктеріңіз болмаса, Питонды айналдырыңдар.
Енді мыналарды білетін болдыңыздар
print() операторын пайдалану жолдары (бір-екі жолға, форматпен, форматсыз, сөздер арасын әртүрлі таңбамен бөлу, санның дәлдігін беру);
Мәліметтерді экранға дұрыс рәсімдеп шығару тәсілдері;
Математикалық операциялардың, шартты операторлардың қарапайым, күрделі тәсілдерін қолдана білу;
Пернетақтадан сандар, сөз тіркестерін енгізу, оларды айнымалыларға меншіктеу тәсілдері;
Комментарийлер (түсініктемелер) беру жолдары.
Келесі сабақта осы тақырыптар сұрақтарына жауап бересіздер
Академиялық тәртіп талаптары
Оқу керек, ұстазды алдамай, басқалардан көшірмей, тазалықпен білім алуға талпыныңдар!
Алдаған шәкірттерге, жұмысын басқаларға көшіруге бергендерге, көшіріп алғандарға 0 балл қойылады немесе балл шегеріледі.
Сұрақтарыңыз болса, ұстазбен байланысуға, кездесуге келіңіздер.
Бағалау жүйесі:
60% - лабораториялық жұмыстарды орындау, рәсімдеу, тапсыру, айтып беру
20% - әр сабаққа алдын ала дайындалу, өзіндік жұмыстар орындау, қосымша есептер шығару
20% - бақылау жұмыстарын орындау, аралық тексеруден (midterm) өту, күрделі есептер шығару, жеке тапсырмалар алып, соларды орындау.
http://melimde.com