. 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
veFalse
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
|
string;
gerekli 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.
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
|
string;
varsayılan değer: '' |
indent
|
string;
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
|
string;
gerekli |
prefix
|
string;
varsayılan değer: '' |
indent
|
string;
varsayılan değer: '\t' |