>  기사  >  백엔드 개발  >  Python 사전은 양방향 인덱싱을 지원합니까?

Python 사전은 양방향 인덱싱을 지원합니까?

anonymity
anonymity원래의
2019-06-15 13:20:2911343검색

Python의 Dictionary는 변경 가능한 또 다른 컨테이너 모델이며 모든 유형의 객체를 저장할 수 있습니다. 사전의 각 키-값(키=>값) 쌍은 콜론(:)으로 구분되며, 각 쌍은 쉼표(,)로 구분됩니다. 전체 사전은 중괄호({})로 묶입니다. 사전이 정렬되지 않은 경우 키를 눌러 값을 가져옵니다.

Python 사전은 양방향 인덱싱을 지원합니까?

사전 모듈은 일대일 매핑 유형의 일부 작업을 처리하기 위해 세 가지 클래스를 제공합니다

'bidic', 'inverted', 'namedbidic'

>>> import bidict
>>> dir(bidict)
['MutableMapping', '_LEGALNAMEPAT', '_LEGALNAMERE', '__builtins__', '__doc__', 
'__file__', '__name__', '__package__', 'bidict', 'inverted', 'namedbidict', 're', 'wraps']

1.bidic 클래스:

>>> from bidict import bidict
>>> D=bidict({'a':'b'})
>>> D['a']
'b'
>>> D[:'b']
'a'
>>> ~D        #反转字典
bidict({'b': 'a'})
>>> dict(D)    #转为普通字典
{'a': 'b'}
>>> D['c']='c'   #添加元素,普通字典的方法都可以用
>>> D
bidict({'a': 'b', 'c': 'c'})

2.inverted 클래스, 사전의 키 값 반전

>>> seq = [(1, 'one'), (2, 'two'), (3, 'three')]
>>> list(inverted(seq))
    [('one', 1), ('two', 2), ('three', 3)]
#🎜🎜 #3.namedbid(맵 이름, fwdname, invname):

>>> CoupleMap = namedbidict('CoupleMap', 'husbands', 'wives')
>>> famous = CoupleMap({'bill': 'hillary'})
>>> famous.husbands['bill']
'hillary'
>>> famous.wives['hillary']
'bill'
>>> famous.husbands['barack'] = 'michelle'
>>> del famous.wives['hillary']
>>> famous
CoupleMap({'barack': 'michelle'})

위 내용은 Python 사전은 양방향 인덱싱을 지원합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.