Proto

프로토콜 메시지 처리를 위한 모듈입니다.

회원

encode_text

string proto.encode_text(x)

구조체 인수의 인코딩을 텍스트 형식 프로토콜 메시지로 반환합니다. 데이터 구조는 문자열, 정수, 부동 소수점 수, 부울 또는 이러한 유형의 구조체, 시퀀스, 사전으로 재귀적으로 구성되어야 합니다.

구조체는 메시지로 변환됩니다. 필드는 이름 순서대로 내보냅니다. 값이 None인 각 구조체 필드는 무시됩니다.

시퀀스(예: 목록 또는 튜플)가 반복 필드로 변환됩니다. 요소가 시퀀스 또는 사전이면 안 됩니다.

사전은 'key' 및 'value'라는 필드가 있는 메시지의 반복 필드로 변환됩니다. 항목은 반복(삽입) 순서로 내보내집니다. dict의 키는 문자열 또는 정수여야 하며 값은 시퀀스나 dict이 아니어야 합니다. 예:

proto.encode_text(struct(field=123))
# field: 123

proto.encode_text(struct(field=True))
# field: true

proto.encode_text(struct(field=[1, 2, 3]))
# field: 1
# field: 2
# field: 3

proto.encode_text(struct(field='text', ignored_field=None))
# field: "text"

proto.encode_text(struct(field=struct(inner_field='text', ignored_field=None)))
# field {
#   inner_field: "text"
# }

proto.encode_text(struct(field=[struct(inner_field=1), struct(inner_field=2)]))
# field {
#   inner_field: 1
# }
# field {
#   inner_field: 2
# }

proto.encode_text(struct(field=struct(inner_field=struct(inner_inner_field='text'))))
# field {
#    inner_field {
#     inner_inner_field: "text"
#   }
# }

proto.encode_text(struct(foo={4: 3, 2: 1}))
# foo: {
#   key: 4
#   value: 3
# }
# foo: {
#   key: 2
#   value: 1
# }

매개변수

매개변수 설명
x 필수