Хелпикс

Главная

Контакты

Случайная статья





import sys 4 страница



 

 

8. 6 Р е з ю м е

 

М ы у в и д е л и, к а к п о л ь з о в а т ь с я о п е р а т о р а м и, о п е р а н д а м и и в ы р а ж е н и я м и. Э т о о с н о в н ы е с т р о и т е л ь н ы е б л о к и л ю б о й п р о г р а м м ы. Д а л е е м ы у в и д и м, к а к э т о п р и м е н и т ь н а п р а к -т и к е.

 

50                                                                                                       Г л а в а 8. О п е р а т о р ы и в ы р а ж е н и я


 

П о т о к к о м а н д

 

 

п р о г р а м м а х, к о т о р ы е м ы д о с и х п о р р а с с м а т р и в а л и, п о с л е д о в а т е л ь н о с т ь к о м а н д в с е г д а в ы п о л н я л а с ь Python п о п о р я д к у с т р о г о с в е р х у в н и з. А ч т о, е с л и н а м н е о б х о д и м о и з м е -н и т ь п о т о к в ы п о л н я ю щ и х с я к о м а н д? Н а п р и м е р, е с л и т р е б у е т с я, ч т о б ы п р о г р а м м а п р и -н и м а л а н е к о т о р о е р е ш е н и е и в ы п о л н я л а р а з л и ч н ы е д е й с т в и я в з а в и с и м о с т и о т с и т у а -ц и и; с к а ж е м, п е ч а т а л а «Д о б р о е у т р о » и л и «Д о б р ы й в е ч е р » в з а в и с и м о с т и о т в р е м е н и с у т о к.

 

К а к в ы у ж е, н а в е р н о е, д о г а д а л и с ь, э т о г о м о ж н о д о с т и ч ь п р и п о м о щ и о п е р а т о р о в у п р а в -л е н и я п о т о к о м. В Python е с т ь т р и о п е р а т о р а у п р а в л е н и я п о т о к о м: if, for и while.

 

9. 1 О п е р а т о р if

 

О п е р а т о р if и с п о л ь з у е т с я д л я п р о в е р к и у с л о в и й: е с л и 1 у с л о в и е в е р н о 2, в ы п о л н я е т с я б л о к в ы р а ж е н и й (н а з ы в а е м ы й «if-б л о к »), и н а ч е 3 в ы п о л н я е т с я д р у г о й б л о к в ы р а ж е н и й (н а з ы -в а е м ы й «else-б л о к »). Б л о к «else» я в л я е т с я н е о б я з а т е л ь н ы м.

 

П р и м е р: (с о х р а н и т е к а к if. py)

 

number = 23

 

guess = int(input('В в е д и т е ц е л о е ч и с л о : '))

 

if guess==number:

 

print ('П о з д р а в л я ю, в ы у г а д а л и, ')#З д е с ь н а ч и н а е т с я н о в ы й б л о к

 

print ('(х о т я и н е в ы и г р а л и н и к а к о г о п р и з а! )')#З д е с ь з а к а н ч и в а е т с я н о в ы й б л о к elif guess< number:

print ('Н е т, з а г а д а н н о е ч и с л о н е м н о г о б о л ь ш е э т о г о. ')#Е щ ё о д и н б л о к

 

В н у т р и б л о к а в ы м о ж е т е в ы п о л н я т ь в с ё, ч т о у г о д н о ...

 

else:

 

print ('Н е т, з а г а д а н н о е ч и с л о н е м н о г о м е н ь ш е э т о г о. ')

 

ч т о б ы п о п а с т ь с ю д а, guess д о л ж н о б ы т ь б о л ь ш е, ч е м number

 

print ('З а в е р ш е н о ')

 

Э т о п о с л е д н е е в ы р а ж е н и е в ы п о л н я е т с я в с е г д а п о с л е в ы п о л н е н и я о п е р а т о р а if

 

if – а н г л. «е с л и » (п р и м. п е р е в. )

С о о т в е т с т в у е т б у л е в о м у з н а ч е н и ю True (п р и м. п е р е в. )

else – а н г л. «и н а ч е », «в п р о т и в н о м с л у ч а е » (п р и м. п е р е в. )


 


A Byte of Python (Russian), В е р с и я 2. 01

 

 

В ы в о д:

 

$ python if. py  
В в е д и т е ц е л о е ч и с л о :
Н е т, з а г а д а н н о е ч и с л о н е м н о г о м е н ь ш е э т о г о.
З а в е р ш е н о  
$ python if. py  
В в е д и т е ц е л о е ч и с л о :
Н е т, з а г а д а н н о е ч и с л о н е м н о г о б о л ь ш е э т о г о.
З а в е р ш е н о  
$ python if. py  
В в е д и т е ц е л о е ч и с л о :

 

П о з д р а в л я ю, в ы у г а д а л и,

 

(х о т я и н е в ы и г р а л и н и к а к о г о п р и з а. )

 

З а в е р ш е н о

 

К а к э т о р а б о т а е т:

 

э т о й п р о г р а м м е м ы п р и н и м а е м в а р и а н т ы о т п о л ь з о в а т е л я и п р о в е р я е м, с о в п а д а ю т л и о н и с з а р а н е е з а д а н н ы м ч и с л о м. М ы у с т а н а в л и в а е м п е р е м е н -н о й number з н а ч е н и е л ю б о г о ц е л о г о ч и с л а, к а к о г о х о т и м. Н а п р и м е р, 23. П о с л е э т о г о м ы п р и н и м а е м в а р и а н т ч и с л а о т п о л ь з о в а т е л я п р и п о м о щ и ф у н к ц и и input(). Ф у н к ц и и – э т о в с е г о -н а в с е г о м н о г о к р а т н о и с п о л ь з у е м ы е ф р а г м е н т ы п р о г р а м м ы. М ы у з н а е м о н и х б о л ь ш е в с л е д у ю щ е й г л а в е .

 

М ы п е р е д а ё м в с т р о е н н о й ф у н к ц и и input с т р о к у, к о т о р у ю о н а в ы в о д и т н а э к р а н и о ж и д а е т в в о д а о т п о л ь з о в а т е л я. К а к т о л ь к о м ы в в е л и ч т о -н и б у д ь и н а ж а л и к л а в и ш у Enter, ф у н к ц и я input() в о з в р а щ а е т с т р о к у, к о т о р у ю м ы в в е -л и. З а т е м м ы п р е о б р а з у е м п о л у ч е н н у ю с т р о к у в ч и с л о п р и п о м о щ и int(), и с о х р а н я е м э т о з н а ч е н и е в п е р е м е н н у ю guess. В о о б щ е -т о, int – э т о к л а с с, н о н а д а н н о м э т а п е в а м д о с т а т о ч н о з н а т ь л и ш ь, ч т о п р и п о м о щ и н е г о м о ж н о п р е о б р а з о в а т ь с т р о к у в ц е л о е ч и с л о (п р е д п о л а г а я, ч т о с т р о к а с о д е р ж и т ц е л о е ч и с л о ).

 

Д а л е е м ы с р а в н и в а е м ч и с л о, в в е д ё н н о е п о л ь з о в а т е л е м, с ч и с л о м, к о т о р о е м ы в ы б р а л и з а р а н е е. Е с л и о н и р а в н ы, м ы п е ч а т а е м с о о б щ е н и е о б у с п е х е. О б р а -т и т е в н и м а н и е, ч т о м ы и с п о л ь з у е м с о о т в е т с т в у ю щ и е у р о в н и о т с т у п а, ч т о б ы у к а з а т ь Python, к а к и е в ы р а ж е н и я о т н о с я т с я к к а к о м у б л о к у. В о т п о ч е м у о т с т у -п ы т а к в а ж н ы в Python. Я н а д е ю с ь, в ы п р и д е р ж и в а е т е с ь п р а в и л а «п о с т о я н н ы х о т с т у п о в », н е т а к л и?

 

О б р а т и т е в н и м а н и е, ч т о в к о н ц е о п е р а т о р а if с т о и т д в о е т о ч и е – э т и м м ы п о -к а з ы в а е м, ч т о д а л е е с л е д у е т б л о к в ы р а ж е н и й.

 

П о с л е э т о г о м ы п р о в е р я е м, в е р н о л и, ч т о п о л ь з о в а т е л ь с к и й в а р и а н т ч и с л а м е н ь ш е з а г а д а н н о г о, и е с л и э т о т а к, м ы и н ф о р м и р у е м п о л ь з о в а т е л я о т о м, ч т о е м у с л е д у е т в ы б и р а т ь ч и с л а н е м н о г о б о л ь ш е э т о г о. З д е с ь м ы и с п о л ь з о -


 

 

52                                                                                                                                     Г л а в а 9. П о т о к к о м а н д


A Byte of Python (Russian), В е р с и я 2. 01

 

 

в а л и в ы р а ж е н и е elif, к о т о р о е п о п р о с т у о б ъ е д и н я е т в с е б е д в а с в я з а н н ы х if else-if else в ы р а ж е н и я в о д н о в ы р а ж е н и е if-elif-else. Э т о о б л е г ч а е т ч т е -н и е п р о г р а м м ы, а т а к ж е н е т р е б у е т д о п о л н и т е л ь н ы х о т с т у п о в.

 

В ы р а ж е н и я elif и else т а к ж е и м е ю т д в о е т о ч и е в к о н ц е л о г и ч е с к о й с т р о к и, з а к о т о р ы м с л е д у ю т с о о т в е т с т в у ю щ и е б л о к и к о м а н д (с с о о т в е т с т в у ю щ и м ч и с -л о м о т с т у п о в, к о н е ч н о ).

 

В н у т р и if-б л о к а о п е р а т о р а if м о ж е т б ы т ь д р у г о й о п е р а т о р if и т а к д а л е е – э т о н а з ы в а е т с я в л о ж е н н ы м 4 о п е р а т о р о м if.

 

П о м н и т е, ч т о ч а с т и elif и else н е о б я з а т е л ь н ы. М и н и м а л ь н а я к о р р е к т н а я з а -п и с ь о п е р а т о р а if т а к о в а:

 

if True:

 

print ('Д а, э т о в е р н о. ')

 

П о с л е т о г о, к а к Python з а к а н ч и в а е т в ы п о л н е н и е в с е г о о п е р а т о р а if в м е с т е с е г о ч а с т я м и elif и else, о н п е р е х о д и т к с л е д у ю щ е м у в ы р а ж е н и ю в б л о к е, с о -д е р ж а щ е м э т о т о п е р а т о р if. В н а ш е м с л у ч а е э т о о с н о в н о й б л о к п р о г р а м м ы (в к о т о р о м н а ч и н а е т с я в ы п о л н е н и е п р о г р а м м ы ), а с л е д у ю щ е е в ы р а ж е н и е – э т о print('З а в е р ш е н о '). П о с л е э т о г о Python д о х о д и т д о к о н ц а п р о г р а м м ы и п р о с т о в ы х о д и т и з н е ё.

 

Х о т я э т о и ч р е з в ы ч а й н о п р о с т а я п р о г р а м м а, я у к а з а л в а м н а ц е л ы й р я д в е щ е й, к о т о р ы е с т о и т в з я т ь н а з а м е т к у. В с ё э т о д о в о л ь н о л е г к о (д а ж е у д и в и т е л ь н о л е г к о д л я т е х и з в а с, к т о п р и ш ё л и з м и р а C/C++). П о н а ч а л у в а м п р и д ё т с я д е р ж а т ь в с е э т и в е щ и в п а м я т и, н о п о с л е н е к о т о р о й п р а к т и к и в ы п р и в ы к н е т е, и о н и в а м п о к а ж у т с я в п о л н е «е с т е с т в е н н ы м и ».



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.