yapılandır

. Sorun bildir Kaynağı göster Gece · 7,3 · 7,2 · 7,1 · 7,0 · 6,5

. Alan içeren genel bir nesne.

Yapı alanları, yapı oluşturulduktan sonra yeniden atanamaz. İki struct, aynı alanlara sahiplerse ve karşılık gelen alan değerleri eşitse eşittir.

Üyeler

struct

struct struct(**kwargs)

Anahtar kelime bağımsız değişkenlerini özellik olarak kullanarak sabit bir struct oluşturur. Birden çok değeri birlikte 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şkenler 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 metrikten yararlanmayın. ---incompatible_struct_has_no_methods ile devre dışı bırakıldı. Kodunuzun, kaldırılma olasılığı yüksek olan içerikle uyumlu 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) dize, ints, boole, diğer struct, 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 kod dışına alını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'lar dışındaki değerler için çalışan ve struct alanı 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 metrikten yararlanmayın. ---incompatible_struct_has_no_methods ile devre dışı bırakıldı. Kodunuzun, kaldırılma olasılığı yüksek olan içerikle uyumlu olduğunu doğrulamak için bu işareti kullanın.
struct parametresinden bir kısa mesaj oluşturur. Bu yöntem yalnızca tüm struct öğeleri (yinelemeli) dize, int, boole, diğer struct veya dikt ya da bu türlerin listeleriyse çalışır. Dizelerdeki tırnak işaretleri ve yeni satırlar kod dışına alınır. Yapı anahtarları, sıralı olarak 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
# }

Desteği sonlandırıldı: Bunun yerine proto.encode_text(x) işlevini kullanın.