15.1-кесте:
Тізбекке қатысты функциялар
Бұл функцияларды қолдану үшін тізбектің атын, кейін функцияның атауын б ал
параметрлер керек жағдайда параметрлерді жазамыз. Төмендегі мысалдарға назар
аударайық.
Мысал 15.8:
fruits = ["apple", "banana", "cherry"]
fruits.append("orange")
print(fruits)
____________________________________________________________________________________________
Экранға шығатын мән:
['apple', 'banana', 'cherry', 'orange']
Мысал 15.9:
fruits = ['apple', 'banana', 'cherry']
fruits.reverse()
print(fruits)
____________________________________________________________________________________________
Экранға шығатын мән:
[
'cherry', 'banana', 'apple']
Мысал 15.10:
fruits = ['apple', 'banana', 'cherry']
x = fruits.index("cherry")
print(x)
94
copy()
Тізімнің көшірмесін қайтарады
count()
Параметр ретінде берілген элементтің
санын қайтарады
index()
Параметр ретінде берілген мәннің
тізбектегі бірінші индексін қайтарады
insert()
Көрсетілген орынға (индекс ретінде)
элемент қосады
pop()
Белгіленген орындағы элементті
жояды
remove()
Параметр ретінде берілген мәні бар
бірінші элементті жояды
reverse()
Тізім ретін өзгертеді (тізім соңын
басына, ал басын соңына аударады)
sort()
Тізімді сорттайды
____________________________________________________________________________________________
Экранға шығатын мән:
2
Мысал 15.11:
cars = ['Ford', 'BMW', 'Volvo']
cars.sort()
print(cars)
____________________________________________________________________________________________
Экранға шығатын мән:
['BMW', 'Ford', 'Volvo']
95
Синтаксис
Синтаксис
16
Класс
16.1. Объектіге бағытталған бағдарламалау
Python бағдарламалау тілі объектіге бағытталған болып табылады. Объектіге
бағытталған дегеніміз — бағдарлама құру барысында объектілерді қолдану арқылы
бағдарлама құру. Әр бір объектінің өзіне тиісті параметрлері және функциялары
болады. Мәселен, қандай да бір адамды объект ретінде қарастырсақ, онда сол
адамның параметрлері (кей әдебиеттерде аттрибуттары деп те қолданылады) мынадай
болуы мүмкін: сол адамның есімі, тегі, бойының ұзындығы және т.б. Яғни, объектінің
параметрлері сол объектіні сипаттайтын заттар болып табылады. Сонымен бірге, сол
адамның қызмет атқаратын функциялары бар. Олар, мысалы: көру, жүру, ұйықтау және
т.б. Яғни бұл функциялар — объектінің (біздің жағдайда қандай да бір адамның)
атқаратын қызметтері. Бұл жағдайда біз адамның қандай да бір түрін объект ретінде
қарастырдық. Яғни бізде он адам болса, онда бізде он объект бар деген сөз. Бұл он
адамның бәріне тән аттрибуттары (аты, жөні, бойының ұзындығы және т.б.) мен
функцияларын (көру, жүру, ұйықтау және т.б.) жоғарыда көрсеттік. Бұл жағдайда адам
— класс, ал қандай да бір адам — сол классқа тиесілі объект болып табылады. Мұнда
класс — қандай да бір ұқсас объектілерді сипаттайтын аттрибуттар мен функциялар
жиынтығы. Ал объект — сол класстың өкілі. Әр объектінің әр аттрибуты бойынша өзіне
тән мәні бар. Мысалы, адам аты және тегінен тұратын класс болып табылса (адам
классының аттрибуттары — адамның аты және тегі), онда сол классқа тиесілі бірінші
объектінің параметрлері төмендегідей болуы мүмкін: бірінші объектінің (адамның) аты
— Мағжан, ал тегі — Жұмабаев, ал екінші объектінің (адамның) аты — Ахмет, ал тегі —
Байтұрсынов. Яғни қандай да бір классқа (біздің жағдайда адам классына) тиесілі
объект сол классқа тиесілі аттрибуттар бойынша (біздің жағдайда адамның аты және
тегі) өзіне тән мәні бар. Классты және объектіні Python тілінде жариялау жолын
көрсетейік.
Мысал 16.1:
class Person:
name = “Magzhan”
p1 = Person()
print(p1.name)
____________________________________________________________________________________
Экранға шығатын мән:
Magzhan
Python тілінде классты жариялау үшін
class
кілтті сөзін қолданамыз.
class
кілтті
сөзінен кейін класс атауын жазамыз. Класс атауы бас әріптен басталып, сол классты
сипаттайтын сөз болуы қажет. Класс атауын жазғаннан кейін қос нүкте қою керек.
Содан кейін келесі жолдарда аралықты қолданып класс аттрибуттарын жазамыз.
Жоғарыдағы мысал үшін
Person
классында тек бір ғана аттрибут бар, ол —
name
, яғни
адам аты. Енді сол класстың объектісін жариялайық. Ол үшін объектінің атын жазып
(біздің жағдайда
p1
), содан кейін ол айнымалыны
Person
классына теңестіреміз. Класс
атауынан кейін ашылған және жабылған жақша болуы керек. Бұл жақшалар
конструкторды білдіреді. Конструкторды келесі тақырыпта толығымен түсіндіретін
боламыз. Объектінің параметріне қол жеткізу үшін сол объектінің атын (біздің жағдайда
p1
) жазып, содан кейін нүктеден соң класс аттрибуттарын жазамыз (біздің жағдайда
name
). Ал
p1.name = “Magzhan”
болғандықтан, экранға
Magzhan
сөзі шығады.
Айнымалының мәнін өзгерткен сияқты, объектінің де аттрибуттарының мәнін де өзгерте
аламыз. Жоғардағы мысал үшін
p1.name = “Akhmet”
, содан кейін
print(p1.name)
деп
жазсақ, экранға
Akhmet
деген сөз шығады.
99
16.2. Конструктор
Конструктор — ағылшын тілінен “құру” деген мағынаны білдіреді. Конструктор
объектіге бағытталған бағдарламалауда қандай да бір классқа тиесілі объектті құру
үшін қолданылатын функция. Конструктордің ішінде класс аттрибуттарының мәні
жарияланады. Конструктор функция сияқты параметрлер қабылдай алады. Егер
ешқандай параметр берілмесе онда мұндай конструкторда аттрибуттар қандай да бір
тұрақты мәнге меншіктеледі (мысалы 0-ге немесе бос мәтінге — “”). Ал егер
конструкторға параметрлер берілсе, онда конструктор сол параметрлерді класс
аттрибуттарына теңеп, солайша класс объектісін құрады. Конструктордың Python
тіліндегі қолданысын келесі мысалды қарастырайық.
Мысал 16.2:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
p1 = Person("Magzhan", 31)
print(p1.name)
print(p1.age)
____________________________________________________________________________________
Экранға шығатын мән:
Magzhan
31
Python
тілінде
конструктор
__init__
функциясы
арқылы
жарияланады.
Конструктордың бірінші параметрі сол класс аттрибуттарына қол жеткізу үшін
қолданылады. Сол себепті, көбінесе бірінші параметрді
self
(“осы, өзі” деп
аударылады) деп атайды.
self
параметі арқылы класс аттрибуттарына қол жеткізіп
(
self.name, self.age
деп жазу арқылы), класс аттрибуттарын конструкторға берілген
парамертлерге меншіктейміз. Объектіні жариялаған кезде, класстың сыртында
конструкторды шақырып, сол конструкторға керекті параметрлерді береміз. Осылайша
классқа тиесілі объектті жариялап шығамыз. Жоғардағы мысал үшін, экранға шығатын
мәндер
Magzhan
және
31
.
16.3. Класс функциясы
Жоғарыда класс аттрибуттары және класс функциялары бар деп айтып кетіп едік.
Осыған дейін класс аттрибуттарын қарастырып келдік. Енді осы жолы класс
функциясын қарастыратын боламыз. Класс функциясы класс аттрибуттары сияқты
классқа тиесі болып табылады. Класс функциясын шақыру үшін объект атауын, кейін
функция атауын жазу керек. Қарапайым функцияларды шақырған сияқты функция
атауынан, кейін ашылған және жабылған жақша жазып, жақша ішіне керекті
параметрлерді берсек болады. Класс функциясының Python тіліндегі қолданысы
келесідей:
100
Мысал 16.3:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def introduce(self):
print("Hello my name is " + self.name)
p1 = Person("Magzhan", 31)
p1.introduce()
____________________________________________________________________________________
Экранға шығатын мән:
Hello my name is Magzhan
Person классының ішінде
introduce
функциясын жариялап, сол функцияға
self
параметрін береміз.
self
параметрін қолдану — класс аттрибуттарына қол жеткізу.
Функция денесінде экранға
“Hello my name is ”
және
name
атты класс аттрибутын
шығарамыз. Класс функциясын тексеру үшін
p1
атты класс объектісін
“Magzhan”
және
31
параметрлерін бере отырып құрамыз. Кейін
p1
объектісінің
introduce
функциясын
шақырамыз. Ол үшін объект атауы (біздің жағдайда
p1
), кейін нүкте арқылы функция
атауын жазамыз. Функцияны шақырғаннан кейін экранға
“Hello my name is
Magzhan”
мәтіні шығады.
16.4. __str__ функциясы
Көптеген жағдайларда объектілерді экранға шығару керек болады. Жоғарыдағы
мысал үшін, егер біз
print(p1)
деп жазатын болсақ, онда экранға
<__main__.Person
object at 0x15039e602100>
сияқты мәтін шығады. Ал, бізге сол объектінің
аттрибуттары шығу керек. Сол себепті
__str__
функциясы қолданылады.
__str__
функциясы арқылы экранға объект аттрибуттарының мәнін өзімізге керекті форматта
шығаруға болады.
__str__
функциясының қолданысы төмендегідей.
Мысал 16.4:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __str__(self):
return f"{self.name}({self.age})"
p1 = Person("John", 36)
print(p1)
____________________________________________________________________________________
Экранға шығатын мән:
Magzhan(31)
101
print(p1)
командасын шақырғанда
__str__
функциясы шақырылып, класс
аттрибуттарын экранға мәтіндік форматта шығарамыз.
102
Синтаксис
17
Мұрагерлік
17.1. Мұрагерлік
Объектіге бағытталған бағдарламалауда мұрагерлік өте жиі кездеседі. Мұрагерлік
дегеніміз — басқа класстан барлық функуиялар мен аттрибуттарды мұраға алатын
құбылыс. Мұндағы ата-ана класы — мұралыққа берген негізгі класс, ал бала класс —
мұралыққа алған класс. Ата-ана классы кез-келген класс бола алады. Сол себепті ата-
ана классын жариялағанда қарапайым класс жариялағандай боламыз. Мысалы,
Person
классын жариялайық.
Мысал 17.1:
class Person:
def __init__(self, fname, lname):
self.firstname = fname
self.lastname = lname
def printname(self):
print(self.firstname, self.lastname)
x = Person("Magzhan", "Kairanbay")
x.printname()
____________________________________________________________________________________
Экранға шығатын мән:
Magzhan Kairanbay
Енді осы класстан мұрагерлік болатын
Student
классын жариялайық. Ол класстың
ішінде ештеңе болмасын. Ол үшін
pass
кілтті сөзін жазу керек.
Мысал 17.2:
class Student(Person):
pass
x = Student("Magzhan", "Kairanbay")
x.printname()
____________________________________________________________________________________
Экранға шығатын мән:
Magzhan Kairanbay
Бұл жағдайда
Student
классы
Person
классынан мұрагерлікті талап етеді. Мұрагерлік
дегеніміз
Person
классының аттрибуттары мен функциялары
Student
классында да
бар дегенді білдіреді. Яғни
Student
классының объектісін жарияласақ, бұл объектіде
firstname, lastname
аттрибуттары мен
printname
функциясы болады. Сол себепті,
Student
объектісін жариялағанда
firstname
және
lastname
сияқты аттрибуттарды
конструкторға береміз. Содан кейін
Student
классының объектісінде
printname
функциясын шақыра аламыз. Бұл функцияны шақырғанда экранға біз берген адам
аты-жөні шығу керек. Бұл жағдайда біз ата-анасынан аттрибуттар мен функцияларды
мұраға алатын бала классын кұрдық. Бұдан бөлек бала классқа тиесілі косымша
аттрибуттар мен функцияларды және сол классқа тиесілі конструкторды қосуға
болады. Бұған көз жеткізу үшін төмендегідей мысалды қарастырайық.
105
Мысал 17.1:
class Person:
def __init__(self, fname, lname):
self.firstname = fname
self.lastname = lname
def printname(self):
print(self.firstname, self.lastname)
class Student(Person):
def __init__(self, fname, lname, year):
super().__init__(fname, lname)
self.graduationyear = year
def welcome(self):
print("Welcome", self.firstname, self.lastname, "to the class of",
self.graduationyear)
x = Student("Magzhan", "Kairanbay", 2013)
x.welcome()
____________________________________________________________________________________
Экранға шығатын мән:
Welcome Magzhan Kairanbay to the class of 2019
Мұнадғы ата-ана классы — алдыда құрған
Person
классы. Student классының өзіне
тән
__init__
конструкторы бар. Бұл конструктор ата-анасының конструкторын
шақырады. Ата-анасының конструкторын шақыру үшін
super().__init__(fname,
lname)
коды қолданылады. Мұндағы,
super()
ата-анасына сілтеме көрсетсе,
__init__
ата-анасының конструкторын көрсетеді. Бұл конструктор параметр ретінде
fname
және
lname
параметрін қабылдайды.
Student
классына тиесілі
graduationyear
параметрін
Student
классының конструкторында меншіктейміз. Яғни
self.graduationyear =
year
. Бұған қоса
Student
классына тиесілі
welcome
функциясын жазамыз. Яғни
Student
классында екі функция бар десек болады. Бірі — ата-анасынан мұраға алған
—
printname
функциясы, ал екіншісі — өзінің жеке функциясы —
welcome
.
Student
классын құрғаннан кейін сол класстың объектісін жарияласақ болады. Біздің жағдайда
Student
классы үш аттрибутты қабылдайды (
Student("Magzhan", "Kairanbay", 2013)
).
Оның екеуі ата-анасынан мұраға алған —
fname
және
lname
аттрибуттары, ал
үшіншісі — өзінің жеке
graduationyear
аттрибуты.
Student
классының
welcome
функциясын шақырғанда, экранға “
Welcome Magzhan Kairanbay to the class of 2019
”
мәтіні шығады.
106
Синтаксис
18
Try except
18.1. Try except
try except
тұжырымы қателермен жұмыс істеу үшін қолданылады.
try except
тұжырымы келесідей төрт бөліктен тұрады:
●
try
— код блогында қателердің бар жоғын тексеруге мүмкіндік береді
●
except
— қатені өңдеу үшін қолданылатын блог
●
else
— қате болмаған кездегі амалдар жиынтығы орындалатын блог
●
finally
— жоғарыдағы жағадайлардың бәрін орындап болғаннан кейінгі (қате
болса да, болмаса да) орындалатын блог
Код жазу барысында қандай да бір қателер пайда болуы мүмкін. Бұл қателер пайда
болғанда бағдарлама өзінің жұмыс істек қызметін тоқтатады. Бірақ, бағдарламада қате
пайда болған жағдайда да ары қарай жұмыс істеу үшін
try except
блогын қолдану
керек болады. Орындауға керекті амалдарды
try
блогының ішіне салып, содан кейін
сол блогта қате пайда болған жағдайда,
except
блогында сол қатемен жұмыс істейтін
код блогы жазылады. Мысалы, біз экранға
x
айнымалысын жарияламастан шығарып
көрейік.
x
айнымалысын жарияламағандықтан, бағдарлама қате шығарып, өз қызметін
тоқтатуы керек. Ал егер сол кодты
try
блогының ішіне жазсақ, мынадай бағадарлама
шығады.
Мысал 18.1:
try:
print(x)
except:
print("
Айнымалы
жарияланбады
")
____________________________________________________________________________________________
Экранға шығатын мән:
Айнымалы
жарияланбады
Пайда болған қатені
try
блогы анықтап, кейін сол қатені
except
бөлігіне береді.
except
бөлігінде экранға “Айнымалы жарияланбады” дейтін мәтінді шығарамыз. Яғни,
try except
блогын қолдана отырып, бағдарлама қатені анықтайды, сол қатемен ары
қарай жұмыс істеп, осылайша өз жұмыс істеу қызметін тоқтатпайды. Ал егер
try
except
блогын қолданбай, жоғардағы бағдарламаны жазсақ, бағдарлама өз қызметін
тоқтатып, төмендегідей қате шығады.
Мысал 18.2:
print(x)
____________________________________________________________________________________________
Экранға шығатын мән:
Traceback (most recent call last):
File "demo_try_except_error.py", line 3, in
print(x)
NameError: name 'x' is not defined
Бұл қатеден көріп отырғанымыздай, экранға “x айнымалысы жарияланбады” деген
мәтін шықты.
109
18.2. Бірнеше except блогы
Қателердің түрлері көп бола береді. Қателердің түрлеріне байланысты қандай да бір
қатенің түрін анықтап, сол қатемен жұмыс жасауға болады. Ол үшін әр қатегің түрі үшін
бірнеше
except
блогын жазуға болады. Әр
except
блогынан кейін қатенің атын жазу
керек. Бірнеше қатені өңдеуді тереңірек түсіну үшін, мына мысалға назар аударайық.
Мысал 18.3:
try:
print(1 / 0)
print(x)
except NameError:
print("x
айнымалысы
жарияланбаған
")
except ZeroDivisionError:
print("
Санды
0-
ге
бөле
алмаймыз
")
____________________________________________________________________________________________
Экранға шығатын мән:
Санды
0-
ге
бөле
алмаймыз
Бұл кодты жүгіртсек, экранға
"
Санды
0-
ге
бөле
алмаймыз
"
мәтіні шығады. Себебі,
алғашқыда бір санын нөлге бөлу барысында қате шығады. Ал бұл қатенің түрі
ZeroDivisionError
деп аталғандықтан,
ZeroDivisionError ecxept
блогындағы
кодтардың жиынтығын орындаймыз. Ал енді бірді нөлге бөлмей, екіге бөліп, кодты
қайта жүгіртейік.
Мысал 18.4:
try:
print(1 / 2)
print(x)
except NameError:
print("x
айнымалысы
жарияланбаған
")
except ZeroDivisionError:
print("
Санды
0-
ге
бөле
алмаймыз
")
____________________________________________________________________________________________
Экранға шығатын мән:
0.5
x
айнымалысы
жарияланбаған
Бұл жағдайда экранға
“x
айнымалысы
жарияланбаған
”
мәтіні шығады. Себебі,
print(1
/ 2)
код бөлігінде ешқандай қате жоқ, ал
print(x)
бөлігі
NameError
қатесін
тудыратындықтан,
NameError except
бөлігіндегі кодтың блогын орындап, экранға
“x
айнымалысы
жарияланбаған
”
мәтінін шығарамыз.
18.3. Else блогы
Егер
try
блогында қате анықталмаса, онда
else
блогындағы кодты жүгіртуге болады.
else
блогын тереңірек түсіну үшін, төмендегі мысалғы назар аударайық.
110
Мысал 18.5:
try:
print("
Сəлем
əлем
")
except:
print("
Қате
пайда
болды
")
else:
print("
Ешқандай
қате
жоқ
")
____________________________________________________________________________________________
Экранға шығатын мән:
Сəлем
əлем
Ешқандай
қате
жоқ
Бұл кодта ешқандай қате болмағандықтан, алдымен
“
Сəлем
əлем
”
, кейін экранға
else
блогындағы
“
Ешқандай
қате
жоқ
”
мәтіні шығады.
18.4. Finally блогы
try except
блогында қате бар болса да, немесе жоқ болса да,
finally
блогын қосу
арқылы сол блоктағы кодтар жиынтығын орындай аламыз.
finally
блогының
қолданысын дұрыс түсіну үшін төмендегі мысалды қарастырайық.
Мысал 19.6:
try:
print(x)
except:
print("
Қате
пайда
болды
")
finally:
print("try except
блогы
аяқталды
")
____________________________________________________________________________________________
Экранға шығатын мән:
Қате
пайда
болды
try except
блогы
аяқталды
Бұл бағдарламада алдымен қате пайда болып, ол қате
except
бөлігіндегі
"
Қате
пайда
болды
"
мәтіні арқылы өңделеді. Соңында
finally
блогындағы
"try except
блогы
аяқталды
"
мәтіні экранға шығады. Ал егер
try
блогындағы
print(x)
мәтінін
print(“
Сəлем
əлем
”)
кодына алмастырсақ, экранға алдымен
“
Сəлем
əлем
”
, содан
кейін
“try except
блогы
аяқталды
”
деген мәтін шығады. Себебі, қате пайда болса да,
болмаса да
finally
блогындағы код орындалады.
111
Синтаксис
Синтаксис
19
Input
19.1. Input
Осыған дейін біз деректерді кодта жариялап отырдық. Бірақ, көп жағдайда деректер
сырттан бағдарламаға енеді. Сол деректерді қолдана отырып, біздің бағдарлама ары
қарай жұмыс істей береді. Осы бөлімде деретерді сырттан қалай оқу керек екенін
үйрететін боламыз. Python тілінің 3-нұсқасында сырттан деректерді оқу үшін
input()
функциясы қолданылады.
input()
функциясының қолданылуы мынадай:
Мысал 19.1:
username = raw_input("Enter username:")
print("Username is: " + username)
____________________________________________________________________________________________
Консоль немесе терминалдан оқитын деректер:
Magzhan
____________________________________________________________________________________________
Экранға шығатын мән:
Username is: Magzhan
Яғни, алдымен экранға
“Enter username: ”
мәтіні шығады. Содан кейін, біз өз
тарапымыздан өз атымызды енгізуіміз керек. Содан соң, экранға
“Username is:
______”
мәтіні шығады, мұндағы
______
сіз енгізген мәтін. Консольдан деректерді
оқыған кезде, оларды әрқашан мәтін ретінде оқимыз. Бірақ кейде сандарды да оқу
керек болады. Сол кезде оқыған мәтінді сандық форматқа ауыстыру керек. Сандық
форматтағы деректерді оқып, оны сандық форматқа ауыстыру мысалы мынадай.
Мысал 19.2:
a = raw_input(“Enter number a: ”)
b = raw_input(“Enter number b: ”)
a = int(a)
b = int(b)
c = a + b
print(c)
____________________________________________________________________________________________
Консоль немесе терминалдан оқитын деректер:
3
4
____________________________________________________________________________________________
Экранға шығатын мән:
7
115
Синтаксис
Синтаксис
20
pip
20.1. pip құралы
Түрлі бағдарламаларды жазу барысында олар неше түрлі құралдарды қажет етеді.
Мысалы, жасанды интеллект бойынша жоба жасағанда соған қатысты құралдар керек
болады. Ал сайт жасау барысында ол сайт жасауға арналған құралдар қажет етеді.
Бұл құралдарды “кітапханалар” деп те атайды. Мысалы, сіз кітапханаға барсаңыз,
өзіңізге керекті кітап іздейсіз. Сол сияқты жоба жасау барысында кітапханадан өзіңізге
керекті құралдармен жұмыс істейсіз. Кітапхананы кейде “пакет” деп те атайды. Ал
пакеттер сізге керекті модульдардан тұрады. Python бағдарламалау тілінде пакеттерді
орнату үшін
pip
кілтті сөзі қолданылады.
pip
кілтті сөзі сіздің компьютеріңізде жұмыс
жасайтынын тексеру үшін төмендегі команданы терминалға немесе консольға жазу
керек:
pip --version
. Бұл командадан кейін
pip
құралының қайда орналасқаны және
нұсқасы экранға шығады.
Мысал 20.1:
pip --version
____________________________________________________________________________________________
Экранға шығатын мән:
pip 22.2.2 from C:\Users\MagzhanKairanbay\anaconda3\lib\site-packages\pip (python
3.9)
Егер
pip
орнатылмаса, онда мына қадамдарды жасау керек:
1.
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
2.
python get-pip.py
Бұл қадамдардан кейін сізде
pip
құралы орнатылады.
20.2. pip арқылы пакетті орнату
pip
арқылы пакетті орнату үшін
pip install
және пакеттің атын жазу керек. Мысалы,
camelcase
пакетін орнату үшін
pip install camelcase
командасын жазу керек.
Керекті пакетті орнатқаннан кейін, сол пакетті бағдарламаңызға
import
кілтті сөзі
арқылы қоса аласыз. Біздің мысалымызда —
import camelcase
. Керекті пакетті
бағдарламаға косқаннан кейін, сол пакеттің функцияларын қолдана аламыз.
Жоғардағы
camelcase
мысалын қарасытырайық.
Мысал 20.2:
import camelcase
c = camelcase.CamelCase()
txt = "hello world"
print(c.hump(txt))
____________________________________________________________________________________________
Экранға шығатын мән:
Hello World
119
camelcase
пакетінің басты мақсаты — әр сөздің бірінші әріпін бас әріпке ауыстыру.
Біздегі
“hello world”
мәтінінің әр сөзін
camelcase
пакетінің
hump
функциясы арқылы
ауыстырдық. Ол үшін алдымен
camelcase
пакетінің конструкторын қолдана отырып
c
объектісін жарияладық. Сол объектінің
hump
функциясына біздегі мәтінді параметр
ретінде бердік.
Егер бізге қандай да бір пакетті өшіру керек болса, онда
pip uninstall
және пакеттің
атын жазу керек. Мысалы,
camelcase
пакеті үшін
pip uninstall camelcase
командасы
camelcase
пакетін компьютерден өшіреді.
20.3. Орнатылған пакеттер тізімі
Компьютеріңізге орнатылған пакеттер тізімін көру үшін
pip list
командасын жазу
керек.
Мысал 20.1:
pip list
____________________________________________________________________________________________
Экранға шығатын мән:
Package Version
-----------------------
camelcase 0.2
mysql-connector 2.1.6
pip 18.1
pymongo 3.6.1
setuptools 39.0.1
Бұл команданы жазғаннан кейін пакеттің аттары және олардың нұсқасы шығады.
120
Синтаксис
21
Файлмен
жұмыс істеу
21.1. Файлмен жұмыс
Бағдарлама жазу барысында файлдармен жұмыс істеуге тура келеді. Яғни қандай да
бір деректерді файлдан оқып, басқа деректерді файлға жазу керек болады. Python
тіліде файлдармен жұмыс істеу үшін
open()
функциясы қолданылады. Бұл функция екі
параметр қабылдайды, біріншісі — файл аты, ал екіншісі — файлмен жұмыс әдісі.
Файлмен жұмыс әдісінің келесідей төрт жолы бар.
●
r
— Оқу — әдепкі мән. Файлдан деректерді оқу үшін файлды ашады. Егер файл
жоқ болса, онда қате қайтарады.
●
a
— Append — файлға деректерді қосу үшін ашады. Егер сіз көрсеткен файл жоқ
болса, онда сіз көрсеткендей файл құрады.
●
w
— Write — файлға деректерді жазу үшін файлды ашады. Егер сіз көрсеткен
файл жоқ болса, онда сіз көрсеткендей файл құрады.
●
x
— Файлды құру. Егер сіз қалаған файл бар болса, онда қате қайтарады.
Бұларға қосымша файлды тексттік форматта немесе бинарлы форматта қарасыту
керектігін көрсететін келесідей жолдары бар.
●
t
— Мәтін — Әдепкі мән. Мәтіндік режим
●
b
— Бинарлы — екілік режим (мысалы, суреттер)
Файлдан деректерді оқу үшін келесі код жазу керек:
f = open("demofile.txt")
. Бұл
код бөлігі келесі код бөлігімен бірдей:
f = open("demofile.txt", "rt")
. Себебі,
r
—
файлдан деректерді оқу үшін қолданылса, ал
t
— мәтіндік режимде оқуды білдіреді.
21.2. Файлдан оқу
Бізде
demofile.txt
атты файл бар делік. Бұл файлда келесідей деректер болсын:
Hello! Welcome to demofile.txt
This file is for testing purposes.
Good Luck!
Бұл деректерді оқу үшін
open()
функциясын қолданамыз. Бұл функция файл объектісін
қайтарады. Бұл объектінің
read()
функциясы арқылы файл ішіндегі деректерді оқимыз.
Мысал 21.1:
f = open("demofile.txt", "r")
print(f.read())
____________________________________________________________________________________________
Экранға шығатын мән:
Hello! Welcome to demofile.txt
This file is for testing purposes.
Good Luck!
Егер бізге керекті файл басқа жерде орналасса, онда сол файлдың орналасқан жерін
көрсету керек.
123
Мысал 21.2:
f = open("D:\\myfiles\welcome.txt", "r")
print(f.read())
Егер біз файлдың бастапқы бес символын ғана оқығымыз келетін болса, онда
read
функциясына 5 санын параметр ретінде беру керек.
Мысал 21.3:
f = open("demofile.txt", "r")
print(f.read(5))
____________________________________________________________________________________________
Экранға шығатын мән:
Hello
Егер біз файлдың бірінші жолын ғана оқығымыз келсе, онда
readline()
функциясын
қолдану керек.
Мысал 21.4:
f = open("demofile.txt", "r")
print(f.readline())
____________________________________________________________________________________________
Экранға шығатын мән:
Hello! Welcome to demofile.txt
Ал егер осы файлдың екі жолын оқығымыз келсе, онда
readline()
функциясын екі рет
жазу керек.
Мысал 21.5:
f = open("demofile.txt", "r")
print(f.readline())
print(f.readline())
____________________________________________________________________________________________
Экранға шығатын мән:
Hello! Welcome to demofile.txt
This file is for testing purposes.
for
циклін қолдана отырып файлдың әр жолы арқылы жүгіре аламыз.
Мысал 21.6:
f = open("demofile.txt", "r")
for x in f:
print(x)
____________________________________________________________________________________________
Экранға шығатын мән:
Hello! Welcome to demofile.txt
This file is for testing purposes.
Good Luck!
124
Файлдармен жұмыс істегенде файлдарды жабу жақсы үрдіс. Әйтпесе файлдар
құртылып кетуі мүмкін. Файлдарды жабу үшін
close()
функциясы қолданылады.
Мысал 21.7:
f = open("demofile.txt", "r")
print(f.readline())
f.close()
____________________________________________________________________________________________
Экранға шығатын мән:
Hello! Welcome to demofile.txt
21.3. Файлға жазу
Python тілінде файлға жазудың екі түрі бар. Біріншісі — деректерді файл соңына
біріктіріп жазу (бұл жағдайда
a
параметрі қолданылады), ал екіншісі — файлдың
ішіндегі деректерді өшіріп, үстіне жазу (ал бұл жағдайда
w
параметрі қолданылады).
Келесі мысалдардың біріншісінде (мысал 21.8) біз файлдың соңына деректерді
жазамыз, ал екіншісінде файлдағы деректерді өшіріп, кейін ішіне жаңа деректерді
жазамыз (мысал 21.9).
Мысал 21.8:
f = open("demofile2.txt", "a")
f.write("Now the file has more content!")
f.close()
f = open("demofile2.txt", "r")
print(f.read())
____________________________________________________________________________________________
Экранға шығатын мән:
Hello! Welcome to demofile2.txt
This file is for testing purposes.
Good Luck!Now the file has more content!
Мысал 21.8:
f = open("demofile3.txt", "w")
f.write("Woops! I have deleted the content!")
f.close()
f = open("demofile3.txt", "r")
print(f.read())
____________________________________________________________________________________________
Экранға шығатын мән:
Woops! I have deleted the content!
125
21.4. Файл құру
Файлды құру үшін
open()
функциясына керекті параметр символдарын беру қажет.
Келесі параметр символдары жаңа файл құру үшін қолданылады.
●
a
— Append — файлға деректерді қосу үшін ашады. Егер сіз көрсеткен файл жоқ
болса, онда сіз көрсеткендей файл құрады.
●
w
— Write — файлға деректерді жазу үшін файлды ашады. Егер сіз көрсеткен
файл жоқ болса, онда сіз көрсеткендей файл құрады.
●
x
— Файлды құру. Егер сіз қалаған файл бар болса, онда қате қайтарады.
Мысалы, келесі код бөлігі арқылы біз жаңа файл құрамыз. Бұл файлдың ішінде
ешқандай дерек жоқ.
Мысал 21.9:
f = open("myfile.txt", "x")
126
Синтаксис
Кітап дизайнері, авторы
Мағжан Қайранбай
Редакторы
Жұмабай Қайранбай
Достарыңызбен бөлісу: |