dict1
의 키가 dict2
에 몇 번 있는지 확인하려면 어떻게해야합니까? dict1
의 키가 dict2
에있는 경우 키가 발견 된 횟수를 기준으로 초기 값이 4
인 변수 val
을 빼야합니다. dicts간에 두 반복 키, val
가 2
같아야 있기 때문에이파이썬에서 사전간에 키가 반복되는 횟수를 계산합니다.
print dict1
{(2, 0): 3, (3, 1): 0, (1, 1): 2, (2, 2): 1}
및 dict2
이
print `dict2`
{(2, 0): 323, (3, 1): 32, (10, 10): 21, (20, 2): 100}
보이는 것처럼 예 dict1
들어
보인다.
이 dict1
과 동일하게 보이는 경우 val
은 0
이어야합니다.
또한 dict1
은 항상 같은 크기이지만 dict2
은 상당히 커질 수 있으므로 빠른 검색 방법이 이상적입니다. 마지막으로, 여기서 말하는 dict의 가치는 실제로 의미가 없습니다.
''목록을 작성하는 이유 @alfasin – alfasin
그냥 얻을 수 ([dict2에서 k는 경우 dict1에서 k에 대한 K]) 렌의 길이? 'sum (dict2에서 k의 경우 dict1의 k에 대해 1)'이 더 효율적입니다. 그러나이 작업 세트 교차점이 더 빠릅니다. –
@ PM2Ring ha, 좋은 점 :) – alfasin