JSON mô-đun là một mô-đun Starlark gồm các hàm liên quan đến JSON.
Hội viên
giải mã
unknown json.decode(x, default=unbound)
"null"
,"true"
và"false"
được phân tích cú pháp dưới dạngNone
,True
vàFalse
.- Số được phân tích cú pháp dưới dạng số nguyên hoặc dưới dạng số thực nếu số đó chứa dấu thập phân hoặc số mũ. Mặc dù JSON không có cú pháp cho các giá trị không hữu hạn, nhưng các giá trị rất lớn có thể được giải mã dưới dạng vô hạn.
- đối tượng JSON được phân tích cú pháp dưới dạng một lệnh chính của Starlark mới chưa được cố định. Nếu một chuỗi khoá xuất hiện nhiều lần trong đối tượng, thì giá trị mới nhất của khoá sẽ được giữ lại.
- một mảng JSON được phân tích cú pháp dưới dạng danh sách Starlark mới chưa được cố định.
x
không phải là phương thức mã hoá JSON hợp lệ và tham số default
không bắt buộc được chỉ định (bao gồm cả chỉ định là None
), thì hàm này sẽ trả về giá trị default
.
Nếu x
không phải là phương thức mã hoá JSON hợp lệ và thông số default
không bắt buộc chưa được chỉ định, thì hàm này sẽ không hoạt động.
Tham số
Thông số | Mô tả |
---|---|
x
|
string;
bắt buộc Chuỗi JSON để giải mã. |
default
|
giá trị mặc định là unbound Nếu được chỉ định, giá trị được trả về khi không thể giải mã x .
|
mã hoá
string json.encode(x)
Hàm mã hoá chấp nhận một đối số vị trí bắt buộc. Đối số này sẽ chuyển đổi thành JSON theo trường hợp:
- Không có, "Đúng và Sai" lần lượt được chuyển đổi thành "null", "true" và "false".
- Số nguyên, bất kể lớn như thế nào, vẫn được mã hoá dưới dạng số nguyên thập phân. Một số bộ giải mã có thể không giải mã được các số nguyên quá lớn.
- Số thực được mã hoá bằng dấu thập phân/số mũ hoặc cả hai, ngay cả khi giá trị số của số thực là số nguyên. Đây là một lỗi khi mã hoá một giá trị dấu phẩy động không hữu hạn.
- Giá trị chuỗi được mã hoá dưới dạng giá trị cố định kiểu chuỗi JSON biểu thị giá trị đó. Mỗi giá trị thay thế chưa ghép nối sẽ được thay thế bằng U+FFFD.
- Một lệnh chính tả được mã hoá dưới dạng đối tượng JSON theo thứ tự khoá. Sẽ xảy ra lỗi nếu khoá nào không phải là một chuỗi.
- Danh sách hoặc bộ dữ liệu được mã hoá dưới dạng mảng JSON.
- Giá trị giống cấu trúc được mã hoá dưới dạng đối tượng JSON theo thứ tự tên trường.
Tham số
Thông số | Mô tả |
---|---|
x
|
bắt buộc |
encode_indent
string json.encode_indent(x, *, prefix='', indent='\t')
json.indent(json.encode(x), ...)
. Hãy xem indent
để biết nội dung mô tả về các tham số định dạng.
Tham số
Thông số | Mô tả |
---|---|
x
|
bắt buộc |
prefix
|
string;
giá trị mặc định là '' |
indent
|
string;
giá trị mặc định là '\t' |
thụt lề
string json.indent(s, *, prefix='', indent='\t')
Tham số
Thông số | Mô tả |
---|---|
s
|
string;
bắt buộc |
prefix
|
string;
giá trị mặc định là '' |
indent
|
string;
giá trị mặc định là '\t' |