proto

Laporkan masalah Lihat sumber Nightly · 8.0 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Modul untuk pemrosesan pesan protokol.

Anggota

encode_text

string proto.encode_text(x)

Menampilkan encoding argumen struct sebagai pesan protokol format teks. Struktur data harus disusun secara rekursif dari string, int, float, atau bool, atau struct, urutan, dan dict dari jenis ini.

Struktur dikonversi menjadi pesan. Kolom ditampilkan dalam urutan nama. Setiap kolom struct yang nilainya None akan diabaikan.

Urutan (seperti daftar atau tuple) dikonversi menjadi kolom berulang. Elemennya tidak boleh berupa urutan atau kamus.

Dict dikonversi menjadi kolom pesan berulang dengan kolom bernama 'key' dan 'value'. Entri dikeluarkan dalam urutan iterasi (penyisipan). Kunci kamus harus berupa string atau int, dan nilainya tidak boleh berupa urutan atau kamus. Contoh:

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
# }

Parameter

Parameter Deskripsi
x structure; required