yapılandır

Sorun bildir Kaynağı görüntüle Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Alanları olan genel bir nesne.

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

Üyeler

struct

struct struct(**kwargs)

Anahtar kelime bağımsız değişkenlerini özellik olarak kullanarak değişmez bir yapı 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 {}
Parametre dizini.

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 yönteme güvenmeyin. ---incompatible_struct_has_no_methods ile devre dışı bırakılır. Kodunuzun yakında kaldırılacak olan işlevlerle uyumlu olup olmadığını 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, kaçış karakteri ile belirtilir. Ö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, structs 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ılır. Kodunuzun yakında kaldırılacak olan işlevlerle uyumlu olup olmadığını doğrulamak için bu işareti kullanın.
struct parametresinden kısa mesaj oluşturur. Bu yöntem yalnızca tüm yapı öğeleri (yeniden doğrulama) dize, tam sayı, boole, diğer yapılar veya bu türlerin sözlükleri ya da listeleri ise çalışır. Dizelerdeki tırnak işaretleri ve yeni satırlar, kaçış karakteri ile belirtilir. Yapı anahtarları, sıralı sırada iterasyona tabi tutulur. Ö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.