json

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

. Modül json, JSON ile ilgili işlevlerin bulunduğu bir Starlark modülüdür.

Üyeler

kod çözmek

unknown json.decode(x, default=unbound)

Kod çözme işlevinde gerekli bir konum parametresi vardır: JSON dizesi. Dizenin belirttiği Starlark değerini döndürür.
  • "null", "true" ve "false"; None, True ve False olarak ayrıştırılır.
  • Sayılar, tam sayı olarak veya ondalık nokta ya da üs içeriyorsa kayan noktalı olarak ayrıştırılır. JSON'da, sonlu olmayan değerler için söz dizimi olmasa da çok büyük değerlerin kodu sonsuz olarak çözülebilir.
  • bir JSON nesnesi, dondurulmamış yeni Starlark komutu olarak ayrıştırılır. Aynı anahtar dizesi nesnede birden çok kez geçilirse anahtarın son değeri korunur.
  • bir JSON dizisi, dondurulmamış yeni Starlark listesi olarak ayrıştırılır.
x geçerli bir JSON kodlaması değilse ve isteğe bağlı default parametresi belirtilmişse (None olarak belirtilenler dahil) bu işlev default değerini döndürür. x geçerli bir JSON kodlaması değilse ve isteğe bağlı default parametresi belirtilmezse bu işlev başarısız olur.

Parametreler

Parametre Açıklama
x zorunlu
Kodu çözülecek JSON dizesi.
default varsayılan değer unbound
Belirtilmişse x kodu çözülemediğinde döndürülecek değer.

encode

string json.encode(x)

Kodlama işlevi, her durumda JSON'a dönüştüren gerekli bir konum bağımsız değişkenini kabul eder:

  • Hiçbiri, Doğru ve Yanlış değerleri sırasıyla "null", "doğru" ve "yanlış" olarak dönüştürülür.
  • Tamsayı, ne kadar büyük olursa olsun, ondalık tam sayı olarak kodlanır. Bazı kod çözücüler çok büyük tam sayıların kodunu çözemeyebilir.
  • Kayan noktalı değerler, sayısal değeri tam sayı olsa bile ondalık nokta veya üs ya da her ikisi kullanılarak kodlanır. Sonlu olmayan bir kayan nokta değerinin kodlanması hatadır.
  • Bir dize değeri, değeri gösteren bir JSON dizesi değişmez değeri olarak kodlanır. Eşlenmemiş her vekil, U+FFFD ile değiştirilir.
  • Dikte, anahtar sırasına göre JSON nesnesi olarak kodlanır. Herhangi bir anahtar dize değilse bu bir hatadır.
  • Bir liste veya unsur, JSON dizisi olarak kodlanır.
  • Yapılandırılmış bir değer, alan adı sırasına göre bir JSON nesnesi olarak kodlanır.
Uygulama tanımlı bir tür, kendi JSON kodlamasını tanımlayabilir. Başka herhangi bir değerin kodlanması hataya neden olur.

Parametreler

Parametre Açıklama
x zorunlu

encode_indent

string json.encode_indent(x, *, prefix='', indent='\t')

encode_indent işlevi, json.indent(json.encode(x), ...) işlevine eş değerdir. Biçimlendirme parametrelerinin açıklaması için indent konusuna bakın.

Parametreler

Parametre Açıklama
x zorunlu
prefix varsayılan değer ''
indent varsayılan değer '\t'

girinti

string json.indent(s, *, prefix='', indent='\t')

Girinti işlevi, geçerli bir JSON kodlu dizenin girintilen biçimini döndürür. Her dizi öğesi veya nesne alanı, önek dizesiyle başlayıp iç içe yerleştirme derinliğine bağlı olarak girinti dizesinin bir veya daha fazla kopyasıyla devam eden yeni bir satırda görünür. İşlev, bir zorunlu konum parametresini, yani JSON dizesini ve ve iki isteğe bağlı yalnızca anahtar kelime dize parametresi (önek ve girinti) her yeni satırın önekini ve girinti birimini belirtir. Giriş geçerli değilse işlev başarısız olabilir veya geçersiz çıkış döndürebilir.

Parametreler

Parametre Açıklama
s zorunlu
prefix varsayılan değer ''
indent varsayılan değer '\t'