parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Re: * 0 :)

andylars 04.06.2016 00:02 / 04.06.2016 00:02

"Смешение индексов и ключей" в реальности:
~$: python

Python 2.7.3 (default, Jun 22 2015, 19:33:41) 
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.

>>> import collections
>>> d = collections.OrderedDict()
>>> d['KeyA'] = 'ValueA'
>>> d['KeyB'] = 'ValueB'
>>> d.items()
[('KeyA', 'ValueA'), ('KeyB', 'ValueB')]


>>> d['KeyA']                          # доступ по ключу
'ValueA'
>>> d['KeyB']
'ValueB'


>>> d.items()[0]                       # доступ по индексу 
('KeyA', 'ValueA')       
>>> d.items()[1]
('KeyB', 'ValueB')
>>> 

>>> d.keys().index('KeyA')             # получение индекса по ключу
0
>>> d.keys().index('KeyB')   
1

>>> d.keys()[0]                        # получение ключа по индексу
'KeyA'
>>> d.keys()[1]
'KeyB'


>>> d.update({'KeyA':'ValueAA'})      # добавление/изменение 
>>> d.update({'KeyC':'ValueC'})
>>> d.items()
[('KeyA', 'ValueAA'), ('KeyB', 'ValueB'), ('KeyC', 'ValueC')]



>>> d.popitem()                       # забрать последний элемент (как из стека)
('KeyC', 'ValueC')
>>> d.items()
[('KeyA', 'ValueAA'), ('KeyB', 'ValueB')]