Хелпикс

Главная

Контакты

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





import os 3 страница



 

У д а л я т ь п а р ы к л ю ч -з н а ч е н и е м о ж н о п р и п о м о щ и н а ш е г о с т а р о г о д о б р о г о о п е р а т о р а del. М ы п р о с т о у к а з ы в а е м и м я с л о в а р я и о п е р а т о р и н д е к с и р о в а -н и я д л я у д а л я е м о г о к л ю ч а, п о с л е ч е г о п е р е д а ё м э т о о п е р а т о р у del. Д л я э т о й о п е р а ц и и н е т н е о б х о д и м о с т и з н а т ь, к а к о е з н а ч е н и е с о о т в е т с т в у е т д а н н о м у к л ю ч у.

 

Д а л е е м ы о б р а щ а е м с я к о в с е м п а р а м к л ю ч -з н а ч е н и е н а ш е г о с л о в а р я, и с п о л ь -з у я м е т о д items, к о т о р ы й в о з в р а щ а е т с п и с о к к о р т е ж е й, к а ж д ы й и з к о т о р ы х с о д е р ж и т п а р у э л е м е н т о в: к л ю ч и з н а ч е н и е. М ы п о л у ч а е м э т у п а р у и п р и с в а и -в а е м е ё з н а ч е н и е п е р е м е н н ы м name и address с о о т в е т с т в е н н о в ц и к л е for.. in, а з а т е м в ы в о д и м э т и з н а ч е н и я н а э к р а н в б л о к е for.

 

Н о в ы е п а р ы к л ю ч -з н а ч е н и е д о б а в л я ю т с я п р о с т ы м о б р а щ е н и е м к н у ж н о м у к л ю ч у п р и п о м о щ и о п е р а т о р а и н д е к с и р о в а н и я и п р и с в а и в а н и е м е м у н е к о -т о р о г о з н а ч е н и я, к а к м ы с д е л а л и д л я Guido в п р и м е р е в ы ш е.

 

a ddress b ook –а н г л. «а д р е с н а я к н и г а » (п р и м. п е р е в. )


 

84                                                                                                                     Г л а в а 12. С т р у к т у р ы д а н н ы х


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

 

 

П р о в е р и т ь, с у щ е с т в у е т л и п а р а к л ю ч -з н а ч е н и е, м о ж н о п р и п о м о щ и о п е р а т о -р а in.

 

Ч т о б ы п р о с м о т р е т ь с п и с о к в с е х м е т о д о в к л а с с а dict с м о т р и т е help(dict).

 

К л ю ч е в ы е А р г у м е н т ы и С л о в а р и

 

с л о в у, е с л и в ы и с п о л ь з о в а л и к л ю ч е в ы е а р г у м е н т ы в в а ш и х ф у н к ц и я х, в ы у ж е и с п о л ь -з о в а л и с л о в а р и! Т о л ь к о п о д у м а й т е: в ы у к а з а л и п а р у к л ю ч -з н а ч е н и е с р е д и п а р а м е т р о в ф у н к ц и и п р и е ё о п р е д е л е н и и, а к о г д а о б р а щ а е т е с ь к п е р е м е н н ы м в н у т р и ф у н к ц и и, т о э т о, ф а к т и ч е с к и, о б р а щ е н и е п о к л ю ч у к с л о в а р ю (к о т о р ы й в т е р м и н а х р а з р а б о т ч и к о в к о м п и л я т о р о в н а з ы в а е т с я т а б л и ц е й и м ё н ).

 

12. 5 П о с л е д о в а т е л ь н о с т и

 

С п и с к и, к о р т е ж и и с т р о к и я в л я ю т с я п р и м е р а м и п о с л е д о в а т е л ь н о с т е й. Н о ч т о т а к о е п о -с л е д о в а т е л ь н о с т и и ч т о в н и х т а к о г о о с о б е н н о г о?

 

О с н о в н ы е в о з м о ж н о с т и – э т о п р о в е р к а п р и н а д л е ж н о с т и (т. е. в ы р а ж е н и я “in” и “not in”)

 

о п е р а т о р и н д е к с и р о в а н и я, п о з в о л я ю щ и й п о л у ч и т ь н а п р я м у ю н е к о т о р ы й э л е м е н т п о -с л е д о в а т е л ь н о с т и.

 

В с е т р и т и п а п о с л е д о в а т е л ь н о с т е й, у п о м и н а в ш и е с я в ы ш е (с п и с к и, к о р т е ж и и с т р о к и ), т а к ж е п р е д о с т а в л я ю т о п е р а ц и ю п о л у ч е н и я в ы р е з к и, к о т о р а я п о з в о л я е т п о л у ч и т ь в ы р е з -к у п о с л е д о в а т е л ь н о с т и, т. е. е ё ф р а г м е н т.

 

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

 

shoplist = ['я б л о к и ', 'м а н г о ', 'м о р к о в ь ', 'б а н а н ы '] name = 'swaroop'

 

О п е р а ц и я и н д е к с и р о в а н и я

 

print ('Э л е м е н т 0 -', shoplist[0])

 

print ('Э л е м е н т 1 -', shoplist[1])

 

print ('Э л е м е н т 2 -', shoplist[2])

 

print ('Э л е м е н т 3 -', shoplist[3])

 

print ('Э л е м е н т -1 -', shoplist[-1])

 

print ('Э л е м е н т -2 -', shoplist[-2])

 

print ('С и м в о л 0 -', name[0])

 

В ы р е з к а и з с п и с к а

 

print ('Э л е м е н т ы с 1п о 3: ', shoplist[1: 3])

 

print ('Э л е м е н т ы с 2д о к о н ц а: ', shoplist[2: ])

 

print ('Э л е м е н т ы с 1п о -1: ', shoplist[1: -1])

 

print ('Э л е м е н т ы о т н а ч а л а д о к о н ц а: ', shoplist[: ])

 

# В ы р е з к а и з с т р о к и


 

12. 5. П о с л е д о в а т е л ь н о с т и                                                                                                                                   85


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

 

print ('С и м в о л ы с 1п о 3: ', name[1: 3])

 

print ('С и м в о л ы с 2д о к о н ц а: ', name[2: ])

 

print ('С и м в о л ы с 1д о -1: ', name[1: -1])

 

print ('С и м в о л ы о т н а ч а л а д о к о н ц а: ', name[: ])

 

В ы в о д:

 

$ python3 seq. py

 

Э л е м е н т 0 - я б л о к и

 

Э л е м е н т 1 - м а н г о

 

Э л е м е н т 2 - м о р к о в ь

 

Э л е м е н т 3 - б а н а н ы

 

Э л е м е н т -1 - б а н а н ы

 

Э л е м е н т -2 - м о р к о в ь

 

С и м в о л 0 - s

 

Э л е м е н т ы с 1 п о 3: ['м а н г о ', 'м о р к о в ь ']

 

Э л е м е н т ы с 2 д о к о н ц а: ['м о р к о в ь ', 'б а н а н ы ']

 

Э л е м е н т ы с 1 п о -1: ['м а н г о ', 'м о р к о в ь ']

 

Э л е м е н т ы о т н а ч а л а д о к о н ц а: ['я б л о к и ', 'м а н г о ', 'м о р к о в ь ', 'б а н а н ы ']

 

С и м в о л ы с 1 п о 3: wa

 

С и м в о л ы с 2 д о к о н ц а: aroop

 

С и м в о л ы с 1 д о -1: waroo

 

С и м в о л ы о т н а ч а л а д о к о н ц а: swaroop

 

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

 

П р е ж д е в с е г о, м ы в и д и м, к а к и с п о л ь з о в а т ь и н д е к с ы д л я п о л у ч е н и я о т д е л ь н ы х э л е м е н т о в п о с л е д о в а т е л ь н о с т и. Э т о е щ ё н а з ы в а ю т п р и п и с ы в а н и е м и н д е к с а . К о -г д а м ы у к а з ы в а е м ч и с л о в к в а д р а т н ы х с к о б к а х п о с л е п о с л е д о в а т е л ь н о с т и, к а к п о к а з а н о в ы ш е, Python и з в л е к а е т э л е м е н т, с о о т в е т с т в у ю щ и й у к а з а н н о й п о з и -ц и и в п о с л е д о в а т е л ь н о с т и. П о м н и т е, ч т о Python н а ч и н а е т о т с ч ё т с 0. П о э т о м у shoplist[0] и з в л е к а е т п е р в ы й э л е м е н т, а shoplist[3] – ч е т в ё р т ы й э л е м е н т п о с л е д о в а т е л ь н о с т и shoplist.

 

И н д е к с т а к ж е м о ж е т б ы т ь о т р и ц а т е л ь н ы м ч и с л о м. В э т о м с л у ч а е п о з и ц и я о т -с ч и т ы в а е т с я о т к о н ц а п о с л е д о в а т е л ь н о с т и. П о э т о м у shoplist[-1] у к а з ы в а -е т н а п о с л е д н и й э л е м е н т п о с л е д о в а т е л ь н о с т и shoplist, а shoplist[-2] – н а п р е д п о с л е д н и й.

 

О п е р а ц и я в ы р е з к и п р о и з в о д и т с я п р и п о м о щ и у к а з а н и я и м е н и п о с л е д о в а -т е л ь н о с т и, з а к о т о р ы м м о ж е т с л е д о в а т ь п а р а ч и с е л, р а з д е л ё н н ы х д в о е т о ч и е м

з а к л ю ч ё н н ы х в к в а д р а т н ы е с к о б к и. З а м е т ь т е, к а к э т о п о х о ж е н а о п е р а ц и ю и н д е к с и р о в а н и я, к о т о р о й м ы п о л ь з о в а л и с ь д о с и х п о р. П о м н и т е, ч т о ч и с л а в с к о б к а х н е о б я з а т е л ь н ы, т о г д а к а к д в о е т о ч и е – о б я з а т е л ь н о.

 

П е р в о е ч и с л о (п е р е д д в о е т о ч и е м ) в о п е р а ц и и в ы р е з к и у к а з ы в а е т п о з и ц и ю, с к о т о р о й в ы р е з к а д о л ж н а н а ч и н а т ь с я, а в т о р о е ч и с л о (п о с л е д в о е т о ч и я ) у к а з ы -в а е т, г д е в ы р е з к а д о л ж н а з а к о н ч и т ь с я. Е с л и п е р в о е ч и с л о н е у к а з а н о, Python н а ч н ё т в ы р е з к у с н а ч а л а п о с л е д о в а т е л ь н о с т и. Е с л и п р о п у щ е н о в т о р о е ч и с л о,

 

86                                                                                                                     Г л а в а 12. С т р у к т у р ы д а н н ы х


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

 

 

Python з а к о н ч и т в ы р е з к у у к о н ц а п о с л е д о в а т е л ь н о с т и. О б р а т и т е в н и м а н и е, ч т о п о л у ч е н н а я в ы р е з к а б у д е т н а ч и н а т ь с я с у к а з а н н о й н а ч а л ь н о й п о з и ц и и,

з а к а н ч и в а т ь с я п р я м о п е р е д у к а з а н н о й к о н е ч н о й п о з и ц и е й, т. е. н а ч а л ь н а я п о з и ц и я б у д е т в к л ю ч е н а в в ы р е з к у, а к о н е ч н а я – н е т.

 

Т а к и м о б р а з о м, shoplist[1: 3] в о з в р а щ а е т в ы р е з к у и з п о с л е д о в а т е л ь н о с т и, н а ч и н а ю щ у ю с я с п о з и ц и и 1, в к л ю ч а е т п о з и ц и ю 2, н о о с т а н а в л и в а е т с я н а п о з и ц и и 3, и п о э т о м у в о з в р а щ а е т в ы р е з к у и з д в у х э л е м е н т о в. А н а л о г и ч н о, shoplist[: ] в о з в р а щ а е т к о п и ю в с е й п о с л е д о в а т е л ь н о с т и.

 



  

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