포인트 사전이 있습니다.
>>> points={'a':(3,4), 'b':(1,2), 'c':(5,5), 'd':(3,3)}
x와 y 값이 5보다 작은 모든 점, 즉 'a', 'b'및 'd'와 같은 새 사전을 만들고 싶습니다.
책 에 따르면 각 사전에는 튜플 items()
목록을 반환하는 함수 가 있습니다 (key, pair)
.
>>> points.items()
[('a', (3, 4)), ('c', (5, 5)), ('b', (1, 2)), ('d', (3, 3))]
그래서 나는 이것을 썼다 :
>>> for item in [i for i in points.items() if i[1][0]<5 and i[1][1]<5]:
... points_small[item[0]]=item[1]
...
>>> points_small
{'a': (3, 4), 'b': (1, 2), 'd': (3, 3)}
더 우아한 방법이 있습니까? 파이썬이 매우 멋진 dictionary.filter(f)
기능 을 가질 것으로 기대했습니다 ...
stackoverflow.com/questions/3420122/…
—
Ciro Santilli 郝海东 冠状 病 六四 事件 法轮功