json
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Module 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şlevinin zorunlu bir konumsal 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 int olarak veya ondalık işareti ya da üs içeriyorsa float olarak ayrıştırılır. JSON'da sonlu olmayan değerler için söz dizimi olmasa da çok büyük değerler sonsuzluk olarak çözümlenebilir.
- JSON nesnesi, yeni bir dondurulmamış Starlark sözlüğü olarak ayrıştırılır. Aynı anahtar dizesi nesnede birden fazla kez görünüyorsa anahtarın son değeri korunur.
- JSON dizisi, yeni dondurulmamış 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ş olması 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
|
gerekli
Kod çözülecek JSON dizesi.
|
default
|
Varsayılan değer unbound 'dir.
Belirtilirse x kodunun çözülemediği durumlarda döndürülecek değer.
|
encode
string json.encode(x)
Kodlama işlevi, gerekli bir konumsal bağımsız değişkeni kabul eder ve bunu duruma göre JSON'a dönüştürür:
- None, True ve False sırasıyla "null", "true" ve "false" olarak dönüştürülür.
- Ne kadar büyük olursa olsun bir int, ondalık tam sayı olarak kodlanır. Bazı kod çözücüler çok büyük tam sayıları çözemeyebilir.
- Kayan nokta, sayısal değeri tam sayı olsa bile ondalık nokta veya üs ya da her ikisi kullanılarak kodlanır. Sınırsız bir kayan nokta değerinin kodlanması hataya neden olur.
- Bir 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.
- Bir sözlük, anahtar sırasına göre JSON nesnesi olarak kodlanır. Herhangi bir anahtar dize değilse hata oluşur.
- Liste veya demet, JSON dizisi olarak kodlanır.
- Yapı benzeri bir değer, alan adı sırasına göre JSON nesnesi olarak kodlanır.
Uygulama tarafından tanımlanan bir tür kendi JSON kodlamasını tanımlayabilir.
Başka 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), ...)
ile eşdeğerdir. Biçimlendirme parametrelerinin açıklaması için
indent
adresine 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')
indent işlevi, geçerli bir JSON kodlu dizenin girintili biçimini döndürür.
Her dizi öğesi veya nesne alanı, iç içe yerleştirme derinliğine göre, önek dizesiyle başlayıp bir veya daha fazla girinti dizesi kopyasıyla devam ederek yeni bir satırda görünür.
İşlev, gerekli bir konumsal parametre (JSON dizesi) ve iki isteğe bağlı yalnızca anahtar kelime dize parametresi (prefix ve indent) kabul eder. Bu parametreler, 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'
|