에 코드를 번역하는 것입니다.이제
multimap = []
multimap.append((3,'a'))
multimap.append((2,'x'))
multimap.append((3,'b'))
multimap.sort()
당신이 multimap
을 반복 할 때, 당신은 당신이 std::multimap
에서와 같은 쌍을 얻을 것이다 :하지만 당신은 C++ STL의 multimap에의 인터페이스 및 훨씬 더 성능이 뭔가를 원한다면, 당신은이 작업을 수행 할 수 있습니다. 불행히도, 그것은 당신의 루프 코드가 C++처럼보기 싫어지게된다는 것을 의미합니다. 요약
def multimap_iter(multimap,minkey,maxkey=None):
maxkey = minkey if (maxkey is None) else maxkey
for k,v in multimap:
if k<minkey: continue
if k>maxkey: break
yield k,v
# this will print 'a','b'
for k,v in multimap_iter(multimap,3,3):
print v
는 defaultdict
는 정말 멋진이며, 파이썬의 힘을 활용하고 당신이 그것을 사용해야합니다.
@ccfenix를 통해 사용할 수 있습니다. 원하는 것을 생각해 보았습니다. 이것이 틀린 경우, 예제를 수정하여 편집하십시오. 예를 들어 사람들이 귀하의 질문에 답변 할 수 있도록 도와줍니다. 그들은 당신이 찾고있는 것을 알아야합니다. – steveha
야, 정확히 내가 원하는 것, 스티브 하 감사합니다! –
http://code.activestate.com/recipes/576835-multimap-associating-multiple-values-to-a-key/ – Chozabu