이 기사에서는 python에 대한 관련 지식을 제공하며, JSON, json 모듈, XML 파일 및 JSON 파일 상호 변환 등에 대한 기본 개요를 포함하여 json 표준 라이브러리에 관한 관련 문제를 주로 소개합니다. 다음은 살펴보겠습니다. , 모두에게 도움이 되기를 바랍니다.
추천 학습: python 동영상 튜토리얼
JSON(전체 이름: JavaScript Object Notation Object Notation)은 lightweight textdataexchangeformat, JSON입니다. 데이터 형식은 실제로 Python의 목록인 대괄호로 묶인 배열을 포함할 수 있는 Python의 사전 형식입니다.
구문 형식: {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 키-값 쌍의 🎜key🎜 부분은 큰따옴표
"
로 묶어야 하며, 작은따옴표는 작동하지 않습니다( 따라서 키워드가 키에 나타나면 특성화되지만 js의 개체에는 필수 요구 사항이 없습니다(따라서 키에는 키워드가 허용되지 않습니다) 🎜🎜2.json 키의 🎜value🎜 부분- 값 쌍, 함수, 정의되지 않음 및 NaN은 허용되지 않지만 js의 개체 값에는 null이 나타날 수 있습니다. 🎜🎜3.json 데이터가 끝난 후 🎜의미 없는 쉼표는 허용되지 않습니다. " name":"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" ]🎜🎜잘못된 json 형식은 다음과 같습니다🎜:🎜🎜🎜🎜🎜 2. json 모듈 🎜🎜🎜🎜1. 함수 🎜🎜🎜1. json 문자열을 사용하여 Python 객체 생성(로드) 🎜🎜2. Python 형식 지정 객체를 ison 문자열로 변환(dump )🎜🎜2. 데이터 유형 변환🎜🎜 데이터를
Python에서 json
형식으로 변환합니다. 다음 표와 같이 데이터 유형이 변경됩니다. JSON | Python | 🎜
---|---|
메서드 | 함수 | 🎜
---|---|
위 내용은 json 표준 라이브러리의 Python 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!