yapılandır

Sorun bildirin Kaynağı göster

Alanları olan genel bir nesne.

struct oluşturulduktan sonra yapı alanları yeniden atanamaz. Aynı alanlara sahip olan ve karşılık gelen alan değerleri eşit olan iki struct eşittir.

Üyeler

yapı

struct struct(**kwargs)

Anahtar kelime bağımsız değişkenlerini özellik olarak kullanarak sabit bir struct oluşturur. Birden çok değeri gruplandırmak için kullanılır. Örnek:
s = struct(x = 2, y = 3)
return s.x + getattr(s, "y")  # returns 5

Parametreler

Parametre Açıklama
kwargs varsayılan değer: {}
Bağımsız değişken sözlüğü.

to_json

string struct.to_json()

Kullanımdan kaldırıldı. Bu API'nin desteği sonlandırılmıştır ve yakında kaldırılacaktır. Lütfen bu özelliğe güvenmeyin. ---incompatible_struct_has_no_methods ile devre dışı bırakılır. Kodunuzun, hemen kaldırılmak üzere uygun olduğunu doğrulamak için bu işareti kullanın.
struct parametresinden bir JSON dizesi oluşturur. Bu yöntem yalnızca tüm struct öğeleri (yinelemeli olarak) dize, ints, boole, diğer struct'lar, bu türlerin listesi veya bu türlerin dize anahtarları ve değerlerini içeren bir sözlük olduğunda çalışır. Dizelerdeki tırnak işaretleri ve yeni satırlar atlanır. Örnekler:
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"}}}
.

Kullanımdan kaldırıldı: Bunun yerine, struct dışındaki değerler için çalışan ve struct alanının ad alanını kirletmeyen json.encode(x) veya json.encode_indent(x) yöntemini kullanın.

to_proto

string struct.to_proto()

Kullanımdan kaldırıldı. Bu API'nin desteği sonlandırılmıştır ve yakında kaldırılacaktır. Lütfen bu özelliğe güvenmeyin. ---incompatible_struct_has_no_methods ile devre dışı bırakılır. Kodunuzun, hemen kaldırılmak üzere uygun olduğunu doğrulamak için bu işareti kullanın.
struct parametresinden kısa mesaj oluşturur. Bu yöntem yalnızca tüm struct öğeleri (yinelemeli olarak) dize, ints, boole, diğer struct veya dicts ya da bu türlerin listeleriyse işe yarar. Dizelerdeki tırnak işaretleri ve yeni satırlar atlanır. Yapı anahtarları, sıralı düzende yinelenir. Örnekler:
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
# }

Kullanımdan kaldırıldı: Bunun yerine proto.encode_text(x) değerini kullanın.