proto

Laporkan masalah Lihat sumber Nightly · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

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 struktur, urutan, dan dict dari jenis ini.

Struct dikonversi menjadi pesan. Kolom ditampilkan dalam urutan nama. Setiap kolom struktur yang nilainya adalah None akan diabaikan.

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

Dict dikonversi menjadi kolom pesan berulang dengan kolom bernama 'key' dan 'value'. Entri dikeluarkan dalam urutan iterasi (penyisipan). Kunci dict harus berupa string atau int, dan nilainya tidak boleh berupa urutan atau dict. 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 struktur; wajib