json modülü, JSON ile ilgili işlevlerin bulunduğu bir Starlark modülüdür.
Üyeler
kod çözmek
unknown json.decode(x, default=unbound)
"null"
,"true"
ve"false"
,None
,True
veFalse
olarak ayrıştırılır.- Sayılar, ondalık işareti veya üs içeriyorsa int olarak ya da float olarak ayrıştırılır. JSON'da sonlu olmayan değerler için söz dizimi olmamasına rağmen çok büyük değerler sonsuz olarak kodlanabilir.
- bir JSON nesnesi, dondurulmamış yeni bir Starlark sözlüğü olarak ayrıştırılır. Aynı anahtar dizesi nesnede birden çok kez geçerse anahtarın son değeri korunur.
- JSON dizisi, dondurulmamış yeni bir 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 belirtilmişse 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 belirtilmemişse bu işlev başarısız olur.
Parametreler
Parametre | Açıklama |
---|---|
x
|
string;
zorunlu Kodu çözülecek JSON dizesi. |
default
|
varsayılan unbound şeklindedirBelirtilirse x kodu çözülemediğinde döndürülecek değer.
|
encode
string json.encode(x)
encode işlevi, zorunlu bir konumsal bağımsız değişken kabul eder ve bu bağımsız değişkeni büyük/küçük harf duyarlı olarak JSON'a dönüştürür:
- Yok, Doğru ve Yanlış sırasıyla "null", "true" ve "false" olarak dönüştürülür.
- Ne kadar büyük olursa olsun int, ondalık tam sayı olarak kodlanır. Bazı kod çözücüler çok büyük tam sayıların kodunu çözemeyebilir.
- Sayısal değeri tam sayı olsa bile kayan nokta, ondalık nokta veya üs veya her ikisi kullanılarak kodlanır. Sonsuz olmayan bir kayan nokta değerini kodlamak hatalıdır.
- Dize değeri, değeri belirten bir JSON dize değişmez değeri olarak kodlanır. Eşlenmemiş her yedek karakter U+FFFD ile değiştirilir.
- Sözlükler, anahtar sırasına göre JSON nesnesi olarak kodlanır. Anahtarlardan biri dize değilse hata oluşur.
- Liste veya tuple, JSON dizisi olarak kodlanır.
- struct benzeri bir değer, alan adı sırasına göre JSON nesnesi olarak kodlanır.
Parametreler
Parametre | Açıklama |
---|---|
x
|
zorunlu |
encode_indent
string json.encode_indent(x, *, prefix='', indent='\t')
json.indent(json.encode(x), ...)
ile aynıdır. Biçimlendirme parametrelerinin açıklaması için indent
adresine bakın.
Parametreler
Parametre | Açıklama |
---|---|
x
|
zorunlu |
prefix
|
dize;
varsayılan değer '' |
indent
|
dize;
varsayılan değer '\t' |
girinti
string json.indent(s, *, prefix='', indent='\t')
Parametreler
Parametre | Açıklama |
---|---|
s
|
dize;
zorunlu |
prefix
|
dize;
varsayılan değer '' |
indent
|
dize;
varsayılan değer '\t' |