JSON(전체 이름: JavaScript Object Notation)은 간단한 텍스트 데이터 교환 형식입니다. 실제로 JSON의 데이터 형식은 Python의 목록인 대괄호로 묶인 배열을 포함할 수 있습니다. .
JSON은 언어에 독립적입니다
JSON은 자기 설명적이고 이해하기 쉽습니다
JSON은 XML보다 작고 빠르며 구문 분석하기 쉽습니다
크롤러는 종종 인터페이스 데이터와 인터페이스 데이터를 얻습니다. JSON 형식입니다
구문 형식: {key1:value1, key2:value2,}
키-값 쌍 형식(콜론으로 구분), 쉼표로 연결{key1:value1, key2:value2,}
键值对形式(用冒号分开),对间用逗号连接
简单案例:JSON 对象
{ "name": "小明", "age": 18}
复杂案例:JSON 数组
{ "student": [ {"name": "小明", "age": 11}, {"name": "小红","age": 10} ], "classroom": {"class1": "room1", "class2": "room2"}}
1、json的键值对的键部分,必须用双引号"
包裹,单引号都不行(所以如果在键中出现了关键字,也被字符化了),而js中对象没有强制要求(所以在键中不允许出现关键字)。
2、json的键值对的值部分,不允许出现函数function,undefined,NaN,但是可以有null,js中对象的值中可以出现。
3、json数据结束后,不允许出现没有意义的逗号,如:{"name":"admin","age":18,}
,注意看数据结尾部分18的后面的逗号,不允许出现。
正确的json格式如下:
# 格式1:JSON 对象{"name": "admin", "age": 18}# 格式2:JSON 数组{ "student": [ {"name": "小明", "age": 18}, {"name": "小红", "age": 16}, {"name": "小黑", "age": 20} ]}
错误的json格式如下:
1、使用jsON字符串生成python对象(load)
2、由python对象格式化成为ison字符串(dump)
将数据从Python转换到json
格式,在数据类型上会有变化,如下表所示:
Python | JSON |
---|---|
dict | object |
list, tuple | array |
str | string |
int, float, int- & float-derived Enums | number |
True | true |
False | false |
None | null |
反过来,将json格式转化为python内置类型,如下表所示:
JSON | Python |
---|---|
object | dict |
array | list |
string | str |
number(int) | int |
number(real) | float |
true | True |
false | False |
null | None |
json模块的使用其实很简单,对于绝大多数场合下,我们只需要使用下面四个方法就可以了:
方法 | 功能 |
---|---|
json.dumps(obj) |
将python数据类型转换为json格式的字符串。 |
json.dump(obj, fp) |
将python数据类型转换并保存到son格式的文件内。 |
json.loads(s) |
将json格式的字符串转换为python的类型。 |
json.load(fp) |
간단한 사례 | : JSON 개체
>>> print(json.dumps(person, sort_keys=True, indent=4, separators=(',', ': '))){ "age": 30, "isonly": true, "name": "\u5c0f\u660e", "tel": [ "888888", "1351111111" ]}🎜3. Notes🎜🎜1. json 키-값 쌍의 핵심 부분은 큰따옴표
"
로 묶어야 하며, 작은따옴표는 작동하지 않습니다. in 키워드는 키에 나타나며 특성화되지만 js의 객체에는 필수 요구 사항이 없습니다(따라서 키에는 키워드가 허용되지 않습니다) 🎜🎜2. json.함수, 정의되지 않음, NaN이 있을 수 있지만 js의 개체 값에 나타날 수 있습니다. 🎜🎜3. json 데이터가 끝나면 다음과 같이 의미 없는 쉼표가 허용되지 않습니다. ":"admin" ,"age":18,}, 데이터 끝에서 18 이후의 쉼표에 주의하세요. 이는 허용되지 않습니다. 🎜🎜4. json 형식 요약🎜🎜🎜올바른 json 형식은 다음과 같습니다🎜: 🎜>>> print(json.dumps(person, sort_keys=True, indent=4, separators=('!', '-'))){ "age"-30! "isonly"-true! "name"-"\u5c0f\u660e"! "tel"-[ "888888"! "1351111111" ]🎜🎜Error.json 형식은 다음과 같습니다🎜:🎜🎜 🎜🎜🎜2.json 모듈 🎜🎜🎜🎜1. 함수 🎜🎜🎜1. json 문자열을 사용하여 Python 객체 생성(로드) 🎜🎜2. Python 형식 지정 객체를 ison 문자열(dump)로 🎜🎜2. 데이터 유형 변환🎜🎜 데이터를
Python에서 json
형식으로 변환합니다. 다음 표와 같이 데이터 유형이 변경됩니다. JSON | Python | 🎜
---|---|
메서드 | 함수 | 🎜
---|---|
위 내용은 Python의 json 표준 라이브러리를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!