반응형
반복 필드에 할당하는 방법은 무엇입니까?
파이썬에서 프로토콜 버퍼를 사용하고 있으며 Person
메시지가 있습니다.
repeated uint64 id
하지만 다음과 같이 값을 할당하려고 할 때 :
person.id = [1, 32, 43432]
오류가 발생합니다. Assigment not allowed for repeated field "id" in protocol message object
반복되는 필드에 값을 할당하는 방법은 무엇입니까?
당으로 문서 , 직접 반복 필드에 할당 할 수 없습니다. 이 경우 extend
목록의 모든 요소를 필드에 추가하도록 호출 할 수 있습니다 .
person.id.extend([1, 32, 43432])
확장 하지 않고 완전히 덮어 쓰 려면 다음을 수행 할 수 있습니다.
person.id[:] = [1, 32, 43432]
이 접근 방식은 필드를 완전히 지우는 데에도 효과적입니다.
del person.id[:]
사용해 볼 수 있습니다. MergeFrom
사용 가능한 전체 메시지 메서드 목록은 다음 문서를 확인하세요. https://developers.google.com/protocol-buffers/docs/reference/python/google.protobuf.message.Message-class
참고 URL : https://stackoverflow.com/questions/23726335/how-to-assign-to-repeated-field
반응형
'IT Share you' 카테고리의 다른 글
Vagrant 공유 및 동기화 폴더 (0) | 2020.12.04 |
---|---|
switch 문의 String이 해당 if-else 문보다 어떻게 더 효율적입니까? (0) | 2020.12.04 |
ES6 템플릿 리터럴 대 연결 문자열 (0) | 2020.12.04 |
원치 않는 위젯 빌드를 처리하는 방법은 무엇입니까? (0) | 2020.12.04 |
명령 줄과 웹 서버 호출을 구별하는 방법은 무엇입니까? (0) | 2020.12.04 |