Kolom struktur tidak dapat ditetapkan ulang setelah struct dibuat. Dua struct dianggap sama jika memiliki kolom yang sama dan jika nilai kolom yang sesuai sama.
Pelanggan
struct
struct struct(**kwargs)Membuat struct yang tidak dapat diubah menggunakan argumen kata kunci sebagai atribut. Ini digunakan untuk mengelompokkan beberapa nilai bersama-sama. Contoh:
s = struct(x = 2, y = 3) return s.x + getattr(s, "y") # returns 5
Parameter
Parameter | Deskripsi |
---|---|
kwargs
|
default = {} Kamus argumen. |
to_json
string struct.to_json()Tidak digunakan lagi. API ini tidak digunakan lagi dan akan segera dihapus. Jangan bergantung padanya. Fitur ini dinonaktifkan dengan
---incompatible_struct_has_no_methods
. Gunakan tanda ini untuk memverifikasi bahwa kode Anda kompatibel dengan segera penghapusannya. Membuat string JSON dari parameter struct. Metode ini hanya berfungsi jika semua elemen struct (secara rekursif) adalah string, int, boolean, struct lainnya, daftar jenis ini, atau kamus dengan kunci string dan nilai jenis ini. Kutipan dan baris baru dalam string di-escape. Contoh:
struct(key=123).to_json() # {"key":123} struct(key=True).to_json() # {"key":true} struct(key=[1, 2, 3]).to_json() # {"key":[1,2,3]} struct(key='text').to_json() # {"key":"text"} struct(key=struct(inner_key='text')).to_json() # {"key":{"inner_key":"text"}} struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_json() # {"key":[{"inner_key":1},{"inner_key":2}]} struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_json() # {"key":{"inner_key":{"inner_inner_key":"text"}}}.
Tidak digunakan lagi: sebagai gantinya, gunakan json.encode(x) atau json.encode_indent(x), yang berfungsi untuk nilai selain struct dan tidak mencemari namespace kolom struct.
to_proto
string struct.to_proto()Tidak digunakan lagi. API ini tidak digunakan lagi dan akan segera dihapus. Jangan bergantung padanya. Fitur ini dinonaktifkan dengan
---incompatible_struct_has_no_methods
. Gunakan tanda ini untuk memverifikasi bahwa kode Anda kompatibel dengan segera penghapusannya. Membuat pesan teks dari parameter struct. Metode ini hanya berfungsi jika semua elemen struct (secara rekursif) merupakan string, int, boolean, struct atau dict atau daftar lainnya dari jenis ini. Kutipan dan baris baru dalam string di-escape. Kunci struktur diiterasi dalam urutan yang diurutkan. Contoh:
struct(key=123).to_proto() # key: 123 struct(key=True).to_proto() # key: true struct(key=[1, 2, 3]).to_proto() # key: 1 # key: 2 # key: 3 struct(key='text').to_proto() # key: "text" struct(key=struct(inner_key='text')).to_proto() # key { # inner_key: "text" # } struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_proto() # key { # inner_key: 1 # } # key { # inner_key: 2 # } struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_proto() # key { # inner_key { # inner_inner_key: "text" # } # } struct(foo={4: 3, 2: 1}).to_proto() # foo: { # key: 4 # value: 3 # } # foo: { # key: 2 # value: 1 # }
Tidak digunakan lagi: sebagai gantinya, gunakan proto.encode_text(x).