>  기사  >  백엔드 개발  >  Python 구문 분석 JSON에 대한 자세한 설명

Python 구문 분석 JSON에 대한 자세한 설명

巴扎黑
巴扎黑원래의
2017-04-17 10:41:521493검색

JSON 함수

JSON 함수를 사용하려면 json 라이브러리를 가져와야 합니다. import json.

함수 설명

json.dumps Python 개체를 JSON 문자열로 인코딩

json.loads 인코딩된 JSON 문자열을 Python 개체로 디코딩

json.dumps

구문

json.dumps(obj, Skipkeys=False, verify_ascii=True, check_circular=True,allow_nan=True, cls=None, indent=None, 구분 기호=None, 인코딩="utf- 8", default=None, sort_keys=False, **kw)

다음 예는 배열을 JSON 형식 데이터로 인코딩합니다.

#!/usr/bin/python
import json
data = {'number': 6, 'name': 'Pythontab'}
jsonData = json.dumps(data)
print jsonData

실행 결과 위 코드는 다음과 같습니다.

{"number": 6, "name": "Pythontab"}

참고: 위 변환을 실행한 후에도 데이터가 변경되지 않은 것을 확인할 수 있습니다. 제가 말하고 싶은 것은 다음과 같습니다. json에서 큰따옴표는 표시된 문자열입니다. . 구분 기호, 작은따옴표는 표준이 아닙니다.

json.loads

json.loads는 JSON 데이터를 디코딩하는 데 사용됩니다. 이 함수는 Python 필드의 데이터 유형을 반환합니다.

구문

json.loads(s[, 인코딩[, cls[, object_hook[,parse_float[,parse_int[,parse_constant[,object_pairs_hook[, **kw]]]]]] ]])
Python JSON
dict object
list, tuple array
str, unicode string
int, long, float number
True true
False false
None null


다음 예는 Python이 JSON 객체를 디코딩하는 방법을 보여줍니다.

#!/usr/bin/python
import json
data = {'number': 6, 'name': 'Pythontab'}
jsonData = json.dumps(data, sort_keys=True, indent=4, separators=(',', ': '))
print jsonData

위 코드의 실행 결과는 다음과 같습니다.

{
    "name": "Pythontab",
    "number": 6
}

json 유형을 Python의 유형 비교표로 변환:

타사 라이브러리 사용: Demjson

Demjson은 Python의 타사 모듈 라이브러리로, 다음과 같이 사용할 수 있습니다. JSONLint 형식화 및 확인 기능을 포함하여 JSON 데이터를 인코딩하고 디코딩합니다.

Github 주소: https://github.com/dmeranda/demjson

환경 구성
JSON Python
object dict
array list
string unicode
number (int) int, long
number (real) float
true True
false False
null None

Demjson을 사용하여 JSON 데이터를 인코딩 또는 디코딩하기 전에 Demjson을 설치해야 합니다. 모듈 먼저 .

방법 1: 소스코드 설치

$ tar -xvzf demjson-2.2.4.tar.gz

$ cd demjson-2.2.4

$ python setup.py install

방법 2: pip를 사용하여 직접 설치

pip install Demjson

JSON 함수

함수 설명

encode Python 객체를 JSON 문자열로 인코딩

decode demjson.decode() 함수를 사용하여 JSON 데이터를 디코딩할 수 있습니다. 이 함수는 Python 필드의 데이터 유형을 반환합니다.

인코드 구문

demjson.encode(self, obj, Nest_level=0)

디코드 구문

demjson.decode(self, txt)

사용법이 너무 쉬워서 여기서는 예제를 생략하겠습니다~~

위 내용은 Python 구문 분석 JSON에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.