Modul json adalah modul Starlark dari fungsi terkait JSON.
Anggota
dekode
unknown json.decode(x, default=unbound)
"null"
,"true"
, dan"false"
diuraikan sebagaiNone
,True
, danFalse
.- Angka diuraikan sebagai int, atau sebagai float jika berisi titik desimal atau eksponen. Meskipun JSON tidak memiliki sintaksis untuk nilai non-hingga, nilai yang sangat besar dapat didekode sebagai tak terhingga.
- objek JSON diuraikan sebagai dict Starlark baru yang tidak dibekukan. Jika string kunci yang sama muncul lebih dari sekali dalam objek, nilai terakhir untuk kunci tersebut akan dipertahankan.
- Array JSON diuraikan sebagai daftar Starlark baru yang tidak dibekukan.
x
bukan encoding JSON yang valid dan parameter default
opsional ditentukan (termasuk ditentukan sebagai None
), fungsi ini akan menampilkan nilai default
.
Jika x
bukan encoding JSON yang valid dan parameter default
opsional tidak ditentukan, fungsi ini akan gagal.
Parameter
Parameter | Deskripsi |
---|---|
x
|
string;
wajib String JSON yang akan didekode. |
default
|
default adalah unbound Jika ditentukan, nilai yang akan ditampilkan saat x tidak dapat didekode.
|
encode
string json.encode(x)
Fungsi encode menerima satu argumen posisi yang diperlukan, yang dikonversi ke JSON berdasarkan kasus:
- None, True, dan False masing-masing dikonversi menjadi 'null', 'true', dan 'false'.
- Int, tidak peduli seberapa besar, dienkode sebagai bilangan bulat desimal. Beberapa dekoder mungkin tidak dapat mendekode bilangan bulat yang sangat besar.
- Float dienkode menggunakan titik desimal atau eksponen atau keduanya, meskipun nilai numeriknya adalah bilangan bulat. Mengenkode nilai floating point non-finite adalah error.
- Nilai string dienkode sebagai literal string JSON yang menunjukkan nilai. Setiap pengganti yang tidak berpasangan diganti dengan U+FFFD.
- Dict dienkode sebagai objek JSON, dalam urutan kunci leksikografis. Error akan terjadi jika ada kunci yang bukan string.
- Daftar atau tuple dienkode sebagai array JSON.
- Nilai seperti struct dienkode sebagai objek JSON, dalam urutan nama kolom.
Parameter
Parameter | Deskripsi |
---|---|
x
|
wajib diisi |
encode_indent
string json.encode_indent(x, *, prefix='', indent='\t')
json.indent(json.encode(x), ...)
. Lihat indent
untuk mengetahui deskripsi parameter pemformatan.
Parameter
Parameter | Deskripsi |
---|---|
x
|
wajib diisi |
prefix
|
string;
defaultnya adalah '' |
indent
|
string;
defaultnya adalah '\t' |
indentasi
string json.indent(s, *, prefix='', indent='\t')