Proto

รายงานปัญหา ดูซอร์สโค้ด รุ่น Nightly · 8.0 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

โมดูลสําหรับการประมวลผลข้อความโปรโตคอล

สมาชิก

encode_text

string proto.encode_text(x)

แสดงผลการเข้ารหัสของอาร์กิวเมนต์ Struct เป็นข้อความโปรโตคอลรูปแบบข้อความ โครงสร้างข้อมูลต้องประกอบด้วยสตริง int จํานวนจริง หรือบูลีน หรือสตรูคเจอร์ ซีเควนซ์ และพจนานุกรมประเภทเหล่านี้แบบซ้ำ

โครงสร้างจะแปลงเป็นข้อความ ระบบจะส่งออกช่องตามลําดับชื่อ ระบบจะไม่สนใจช่อง Struct แต่ละช่องที่มีค่าเป็น None

แปลงลําดับ (เช่น รายการหรือทูเปิล) เป็นช่องที่ซ้ำกัน องค์ประกอบต้องไม่ใช่ลําดับหรือพจนานุกรม

ระบบจะแปลงพจนานุกรมเป็นช่องข้อความที่ซ้ำกันซึ่งมีช่องชื่อ "คีย์" และ "ค่า" ระบบจะส่งออกรายการตามลําดับการวนซ้ำ (การแทรก) คีย์ของพจนานุกรมต้องเป็นสตริงหรือ int และค่าต้องไม่ใช่ลําดับหรือพจนานุกรม ตัวอย่าง:

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 structure; ต้องระบุ