Дәріс 8. Блок. Тармақталу. Таңдау нұсқауы Алгоритмдік құрылымның негізгі бір бөлігі болып альтернатива табылады.
If тармақталу операторы кейбір жағдайларға байланысты белгілі бір нұсқаулық жиынтығын орындауға мүмкіндік береді. Келесі пайдалану опциялары мүмкін:
1. if конструкциясы if операторының синтаксисі төмендегідей жазылады: if логикалық өрнек: команда_1 команда_2
...
команда_n
If операторынан кейін логикалық өрнек жазылады. Логикалық өрнек-есептеу нәтижесі "ақиқат" немесе "жалған" болып табылатын бағдарламалау тілінің құрылымы.
Егер бұл өрнек ақиқат болса, онда осы оператор анықтайтын нұсқаулықтар орындалады.
Ескерту:өрнек ақиқат болған жағдайда, орындау қажет код блогы сол жақта төрт бос орынмен бөлінеді!
2. if – else конструкциясы Бағдарламаны орындаудың баламалы нұсқасын қарастыру қажет болған жағдайлар да болады. Яғни, ақиқат жағдайда нұсқаулардың бір жиынтығын, жалған болса – екіншісін орындау керек. Ол үшін if-else құрылымы қолданылады.
If-else операторының синтаксисі төмендегідей жазылады:
if логикалық өрнек: команда_1 команда_2
...
команда_n else: команда_1 команда_2
...
команда_n
3.if – elif – else конструкциясы Бірнеше баламаларды таңдау үшін if-elif-else құрылымын пайдалануға болады.
if-elif-else операторының синтаксисі төмендегідей жазылады:
if логикалық өрнек_1: команда_1 команда_2
...
команда_n elif логикалық өрнек_2: команда_1
команда_2
...
команда_n elif логикалық өрнек_3: команда_1 команда_2
...
команда_n else: команда_1 команда_2
...
команда_n
Дәріс 9. Файлдармен енгізу-шығару операциялары Келесі бағдарлама файлды ашады және оның мазмұнын оқиды:
f = open(“foo.txt”) # файлдық объектіні қайтарады line = f.readline() # файлдың readline() файлы шақырылады while line: print line, # ‘,’ келесі жолға көшу орындалмайды
# print(line,end=’’) # Python 3 line = f.readline() f.close()
оpen()функциясы жаңа файл нысанын қайтарады. Бұл әдістерді
шақыру файлға әр түрлі әрекеттер жасауға мүмкіндік береді. readline әдісі () файлдың бір жолын оқиды, соның ішінде соңғы аударма символы жолдар. Файлдың соңына жеткенде бос жол қайтарылады.
Бұл мысалда бағдарлама файлдағы барлық жолдарды өтеді. Циклдегі бағдарлама кейбір деректер коллекцияларын (мысалы, файлдағы жолдар, сандар, жол белгілері және т.б.) өтуі, итерация деп аталады
Python тілінде осы мақсаттар үшін коллекция элементтерін өтетін арнайы for нұсқаулығы қарастырылған. Мысалы, алдыңғы бағдарлама қысқаша былай жазылуы мүмкін: for line in open(“foo.txt”): print line,
Бағдарлама нәтижесін файлға жазу үшін, print нұсқауына келесі
файлға қайта бағыттау операторын > > қосуға болады.
Мысалы: f = open(“out”,”w”) # Открывает файл для записи while year <= numyears:
principal = principal * (1 + rate) print >>f,”%3d %0.2f” % (year,principal) year += 1 f.close()
Оператор > > тек Python 2 ішінде пайдалануға болады. Python 3 print нұсқаулығын төменде көрсетілгендей өзгерту керек:
print(“%3d %0.2f” % (year,principal),file=f)
Сонымен қатар, файлдық нысандарда, форматталмаған деректерді жазу үшін, write () әдісін пайдалануға болады. Мысалы, алдыңғы мысалдағы print нұсқаулығын келесі нұсқаулықпен ауыстыруға болады:
f.write(“%3d %0.2f\n” % (year,principal))
Осы мысалдарда операциялар файлдарға орындалса да, осы тәсілдерді стандартты енгізу және шығару ағындарымен жұмыс істегенде пайдалануға болады. Мысалы, пайдаланушы кірісін интерактивті режимде оқығыңыз келсе, оны sys.stdin файлынан алуға болады. Қажет болғанда деректерді экранға шығарып, оларды sys.stdout файлына жазуға болады, бұлар print нұсқауымен қолданылады. Мысалы: import sys
sys.stdout.write(Введите свое имя :”) name = sys.stdin.readline()
Python 2 пайдалану кезінде бұл мысалды қысқартуға болады: name = raw_input(“Введите свое имя :”) raw_input ()функциясы Python 3 –те input () деп аталды.