if dict['sample']:
//append values to dict['sample']
else:
// assign new key to the python dictionary
DICT [ '샘플'] 비어있는 경우, 파이썬은 오류가 발생합니다. 누구든지 이걸 확인하는 더 좋은 방법을 알고 있습니까?
내가 원하는 것은 데이터 목록을 갖게됩니다. a, a, b, c, g, g, g, g, g를 가정 해 봅시다.
그래서 파이썬 사전에 dict [ 'a']와 g, g, g, g, g의 값을 dict [ 'g']에 추가하고 나머지는 dict [ 'b'] 등. for 루프는 a, a, b, c, g, g, g, g, g의 데이터를 순환하도록 실행됩니다.
나는 내 질문을 분명히하기를 바랍니다. 어떤 생각? 파이썬의 사전에 기존 키를 확인하는 방법이 있다면 바람직합니다.
편집
신용 @ 폴 맥과이어로 이동합니다. 나는 Paul McGuire의 답을 토대로 내가 원했던 정확한 해결책을 알아 냈다. 아래와 같이 :
from collections import defaultdict
class Test:
def __init__(self, a,b):
self.a=a
self.b=b
data = []
data.append(Test(a=4,b=6))
data.append(Test(a=1,b=2))
data.append(Test(a=1,b=3))
data.append(Test(a=2,b=2))
data.append(Test(a=3,b=2))
data.append(Test(a=4,b=5))
data.append(Test(a=4,b=2))
data.append(Test(a=1,b=2))
data.append(Test(a=5,b=9))
data.append(Test(a=4,b=7))
dd = defaultdict(list)
for c in data:
dd[c.a].append(c.b)
print dd
또 다른 학습 기회 - * namedtuple *. 'Test = namedtuple ("Test", "ab")','namedtuple'을 콜렉션 모듈에서 가져 오기에 추가하고 나머지는 모두 남겨 둡니다 ('object', BTW를 확장해야합니다) . 'namedtuples'는이 간단한 struct-like 클래스들에 편리합니다. 게다가 그들은 불변하여 적절한 dict 키와 값을 설정할 수 있습니다. – PaulMcG
지식에 다시 한번 감사드립니다. 위는 내가 작성한 예일뿐입니다. 서버 측에서 데이터를 가져와 GQL Query 객체를 반환해야했습니다. 그러나 귀하의 제안은 미래의 필요에 확실히 도움이됩니다. 다시 한 번 감사드립니다! :) – MrCooL