import sys 2 страница
44 Г л а в а 7. О с н о в ы
О п е р а т о р ы и в ы р а ж е н и я
Б о л ь ш и н с т в о п р е д л о ж е н и й (л о г и ч е с к и х с т р о к ) в п р о г р а м м а х с о д е р ж а т в ы р а ж е н и я . П р о -с т о й п р и м е р в ы р а ж е н и я: 2 + 3. В ы р а ж е н и е м о ж н о р а з д е л и т ь н а о п е р а т о р ы и о п е р а н д ы.
О п е р а т о р ы –э т о н е к и й ф у н к ц и о н а л, п р о и з в о д я щ и й к а к и е -л и б о д е й с т в и я, к о т о р ы й м о -ж е т б ы т ь п р е д с т а в л е н в в и д е с и м в о л о в, к а к н а п р и м е р +, и л и с п е ц и а л ь н ы х з а р е з е р в и -р о в а н н ы х с л о в. О п е р а т о р ы м о г у т п р о и з в о д и т ь н е к о т о р ы е д е й с т в и я н а д д а н н ы м и, и э т и д а н н ы е н а з ы в а ю т с я о п е р а н д а м и . В н а ш е м с л у ч а е 2 и 3 – э т о о п е р а н д ы.
8. 1 О п е р а т о р ы
К р а т к о р а с с м о т р и м о п е р а т о р ы и и х п р и м е н е н и е:
О б р а т и т е в н и м а н и е, в ы ч и с л и т ь з н а ч е н и я в ы р а ж е н и й, д а н н ы х в п р и м е р а х, м о ж н о т а к -ж е и с п о л ь з у я и н т е р п р е т а т о р и н т е р а к т и в н о. Н а п р и м е р, д л я п р о в е р к и в ы р а ж е н и я 2 + 3 в о с п о л ь з у й т е с ь и н т е р а к т и в н о й к о м а н д н о й с т р о к о й и н т е р п р е т а т о р а Python:
2 + 3
3 * 5
О п е р а т о р ы и и х п р и м е н е н и е
О п е р а т о р
| Н а з в а -
| О б ъ я с н е н и е
| П р и м е р ы
|
| н и е
|
|
|
|
|
|
| +
| С л о ж е -
| С у м м и р у е т д в а о б ъ е к т а
| 3 + 5 д а с т 8; 'a' + 'b' д а с т
|
| н и е
|
| 'ab'
|
|
|
|
| -
| В ы ч и -
| Д а ё т р а з н о с т ь д в у х ч и с е л; е с л и
| -5. 2 д а с т о т р и ц а т е л ь н о е
|
| т а н и е
| п е р в ы й о п е р а н д о т с у т с т в у е т,
| ч и с л о, а 50 - 24 д а с т 26.
|
|
| о н с ч и т а е т с я р а в н ы м н у л ю
|
|
|
|
|
| *
| У м н о -
| Д а ё т п р о и з в е д е н и е д в у х ч и с е л
| 2 * 3 д а с т 6. 'la' * 3 д а с т
|
| ж е н и е
| и л и в о з в р а щ а е т с т р о к у,
| 'lalala'.
|
|
| п о в т о р ё н н у ю з а д а н н о е ч и с л о
|
|
|
| р а з.
|
|
|
|
|
|
A Byte of Python (Russian), В е р с и я 2. 01
О п е р а т о р
| Н а з в а -
| О б ъ я с н е н и е
| П р и м е р ы
|
| н и е
|
|
|
|
|
|
| **
| В о з в е -
| В о з в р а щ а е т ч и с л о х,
| 3 ** 4д а с т 81(т. е. 3 * 3 * 3
|
| д е н и е в
| в о з в е д ё н н о е в с т е п е н ь y
| * 3)
|
| с т е п е н ь
|
|
|
|
|
|
| /
| Д е л е н и е
| В о з в р а щ а е т ч а с т н о е о т
| 4 / 3д а с т
|
|
| д е л е н и я x н а y
| 1. 3333333333333333.
|
|
|
|
| //
| Ц е л о -
| В о з в р а щ а е т н е п о л н о е ч а с т н о е
| 4 // 3 д а с т 1.
|
| ч и с -
| о т д е л е н и я
|
|
| л е н н о е
|
|
|
| д е л е -
|
|
|
| н и е
|
|
|
|
|
|
| %
| Д е л е н и е
| В о з в р а щ а е т о с т а т о к о т
| 8 % 3 д а с т 2. -25. 5 % 2. 25
|
| п о м о -
| д е л е н и я
| д а с т 1. 5.
|
| д у л ю
|
|
|
|
|
|
| < <
| С д в и г
| С д в и г а е т б и т ы ч и с л а в л е в о н а
| 2 < < 2 д а с т 8. В д в о и ч н о м
|
| в л е в о
| з а д а н н о е к о л и ч е с т в о
| в и д е 2 п р е д с т а в л я е т с о б о й 10.
|
|
| п о з и ц и й. (Л ю б о е ч и с л о в
| С д в и г в л е в о н а 2 б и т а д а ё т
|
|
| п а м я т и к о м п ь ю т е р а
| 1000, ч т о в д е с я т и ч н о м в и д е
|
|
| п р е д с т а в л е н о в в и д е б и т о в -
| о з н а ч а е т 8.
|
|
| и л и д в о и ч н ы х ч и с е л, т. е. 0 и 1)
|
|
|
|
|
| > >
| С д в и г
| С д в и г а е т б и т ы ч и с л а в п р а в о
| 11 > > 1 д а с т 5. В д в о и ч н о м
|
| в п р а в о
| н а з а д а н н о е ч и с л о п о з и ц и й.
| в и д е 11 п р е д с т а в л я е т с я к а к
|
|
|
| 1011, ч т о б у д у ч и с м е щ ё н н ы м
|
|
|
| н а 1 б и т в п р а в о, д а ё т 101, а э т о,
|
|
|
| в с в о ю о ч е р е д ь, н и ч т о и н о е
|
|
|
| к а к д е с я т и ч н о е 5
|
|
|
|
| &
| П о б и -
| П о б и т о в а я о п е р а ц и я И н а д
| 5 & 3д а ё т 1.
|
| т о в о е
| ч и с л а м и
|
|
| И
|
|
|
|
|
|
| |
| П о б и -
| П о б и т о в а я о п е р а ц и я И Л И н а д
| 5 | 3д а ё т 7
|
| т о в о е
| ч и с л а м и
|
|
| И Л И
|
|
|
|
|
|
| ^
| П о б и -
| П о б и т о в а я о п е р а ц и я
| 5 ^ 3д а ё т 6
|
| т о в о е
| И С К Л Ю Ч И Т Е Л Ь Н О И Л И
|
|
| И С -
|
|
|
| К Л Ю -
|
|
|
| Ч И -
|
|
|
| Т Е Л Ь -
|
|
|
| Н О
|
|
|
| И Л И
|
|
|
|
|
|
| ~
| П о б и -
| П о б и т о в а я о п е р а ц и я Н Е д л я
| ~5 д а ё т -6.
|
| т о в о е
| ч и с л а x с о о т в е т с т в у е т -(x+1)
|
|
| Н Е
|
|
|
|
|
|
|
46 Г л а в а 8. О п е р а т о р ы и в ы р а ж е н и я
A Byte of Python (Russian), В е р с и я 2. 01
О п е р а т о р
| Н а з в а -
| О б ъ я с н е н и е
| П р и м е р ы
|
| н и е
|
|
|
|
|
|
| <
| М е н ь ш е
| О п р е д е л я е т, в е р н о л и, ч т о x
| 5 < 3 д а с т False,
|
|
| м е н ь ш е y. В с е о п е р а т о р ы
| а 3 < 5 д а с т True.
|
|
| с р а в н е н и я в о з в р а щ а ю т True
| М о ж н о с о с т а в л я т ь
|
|
| и л и False 1. О б р а т и т е
| п р о и з в о л ь н ы е ц е п о ч к и
|
|
| в н и м а н и е н а з а г л а в н ы е б у к в ы
| с р а в н е н и й: 3 < 5 < 7 д а ё т
|
|
| в э т и х с л о в а х.
| True.
|
|
|
|
| >
| Б о л ь ш е
| О п р е д е л я е т, в е р н о л и, ч т о x
| 5 > 3 д а ё т True. Е с л и о б а
|
|
| б о л ь ш е y
| о п е р а н д а - ч и с л а, т о п е р е д
|
|
|
| с р а в н е н и е м о н и о б а
|
|
|
| п р е о б р а з у ю т с я к о д и н а к о в о м у
|
|
|
| т и п у. В п р о т и в н о м с л у ч а е
|
|
|
| в с е г д а в о з в р а щ а е т с я False.
|
|
|
|
| < =
| М е н ь ш е
| О п р е д е л я е т, в е р н о л и, ч т о x
| x = 3; y = 6; x < = y д а ё т
|
| и л и
| м е н ь ш е и л и р а в н о y
| True.
|
| р а в н о
|
|
|
|
|
|
| > =
| Б о л ь ш е
| О п р е д е л я е т, в е р н о л и, ч т о x
| x = 4; y = 3; x > = 3 д а ё т
|
| и л и
| б о л ь ш е и л и р а в н о y
| True.
|
| р а в н о
|
|
|
|
|
|
| ==
| Р а в н о
| П р о в е р я е т, о д и н а к о в ы л и
| x = 2; y = 2; x == y д а ё т
|
|
| о б ъ е к т ы
| True. x = 'str'; y = 'stR';
|
|
|
| x == y д а ё т False. x = 'str';
|
|
|
| y = 'str'; x == y д а ё т True.
|
|
|
|
| ! =
| Н е
| П р о в е р я е т, в е р н о л и, ч т о
| x = 2; y = 3; x! = y д а ё т
|
| р а в н о
| о б ъ е к т ы н е р а в н ы
| True.
|
|
|
|
| not
| Л о г и -
| Е с л и x р а в н о True, о п е р а т о р
| x = True; not x д а ё т False.
|
| ч е с к о е
| в е р н ё т False. Е с л и ж е x р а в н о
|
|
| Н Е
| False, п о л у ч и м True.
|
|
|
|
|
| and
| Л о г и -
| x and y д а ё т False, е с л и x
| x = False; y = True; x and
|
| ч е с к о е
| р а в н о False, в п р о т и в н о м
| y в о з в р а щ а е т False, п о с к о л ь к у
|
| И
| с л у ч а е в о з в р а щ а е т з н а ч е н и е y
| x р а в н о False. В э т о м с л у ч а е
|
|
|
| Python н е с т а н е т п р о в е р я т ь
|
|
|
| з н а ч е н и е y, т а к к а к у ж е з н а е т,
|
|
|
| ч т о л е в а я ч а с т ь в ы р а ж е н и я
|
|
|
| ‘and’ р а в н я е т с я False, ч т о
|
|
|
| п о д р а з у м е в а е т, ч т о и в с ё
|
|
|
| в ы р а ж е н и е в ц е л о м б у д е т
|
|
|
| р а в н о False, н е з а в и с и м о о т
|
|
|
| з н а ч е н и й в с е х о с т а л ь н ы х
|
|
|
| о п е р а н д о в. Э т о н а з ы в а е т с я
|
|
|
| у к о р о ч е н н о й о ц е н к о й б у л е в ы х
|
|
|
| (л о г и ч е с к и х ) в ы р а ж е н и й.
|
|
|
|
|
|