튜플 목록을 반복하여 올바른 일치를 찾는 데 더 빠르고 시간이 절약되는 방법이 있는지 궁금합니다. 내가하는 일은 다음과 같습니다 :튜플 목록을 신속하게 반복
# this is a very long list.
my_list = [ (old1, new1), (old2, new2), (old3, new3), ... (oldN, newN)]
# go through entire list and look for match
for j in my_list:
if j[0] == VALUE:
PAIR_FOUND = True
MATCHING_VALUE = j[1]
break
이 코드는 목록의 항목 수에 따라 실행하는 데 꽤 시간이 걸릴 수 있습니다. 이렇게하는 더 좋은 방법이있을 것이라고 확신합니다.
좋아 보이지만 그렇게 될 것입니다. '오래된 가치'로만 검색 할 수 있습니다. 새롭고 오래된 값 필드에서 검색 할 수 있도록 두 개의 dicts를 만들어야합니까? – memyself
@memyself : 네, 맞습니다. * 이전 값과 새 값을 모두 검색해야하는 경우 두 개의 dict을 작성해야합니다. 그러나 당신이 원한다면 빠른 조회 만 있으면 나쁘지 않다고 생각합니다. reverse dict를 만들기위한 샘플 스 니펫을 추가했습니다. –
나는 get()에 대해 몰랐다. 이것은 내 인생을 훨씬 단순하게 만들었다. – dgBP