Hướng dẫn parse json stringify in python - phân tích cú pháp json stringify trong python


JSON là một cú pháp để lưu trữ và trao đổi dữ liệu.

JSON là văn bản, được viết với ký hiệu đối tượng JavaScript.


JSON trong Python

Python có một gói tích hợp có tên json, có thể được sử dụng để làm việc với dữ liệu JSON.

Thí dụ

Nhập mô -đun JSON:

Nhập JSON


Parse JSON - Chuyển đổi từ JSON sang Python

Nếu bạn có chuỗi JSON, bạn có thể phân tích nó bằng cách sử dụng phương thức json.loads().

Thí dụ

Nhập mô -đun JSON:

Nhập JSON

Parse JSON - Chuyển đổi từ JSON sang Python
x =  '{ "name":"John", "age":30, "city":"New York"}'

Nếu bạn có chuỗi JSON, bạn có thể phân tích nó bằng cách sử dụng phương thức json.loads().
y = json.loads(x)

Chuyển đổi từ JSON sang Python:
print(y["age"])

Nhập JSON


# một số json: x = & nbsp; '{"Tên": "John", "Tuổi": 30, "Thành phố": "New York"}'

# parse x: y = json.loads (x)

Thí dụ

Nhập mô -đun JSON:

Nhập JSON

Parse JSON - Chuyển đổi từ JSON sang Python
x = {
  "name": "John",
  "age": 30,
  "city": "New York"
}

Nếu bạn có chuỗi JSON, bạn có thể phân tích nó bằng cách sử dụng phương thức json.loads().
y = json.dumps(x)

Chuyển đổi từ JSON sang Python:
print(y)

Nhập JSON



# một số json: x = & nbsp; '{"Tên": "John", "Tuổi": 30, "Thành phố": "New York"}'

  • # parse x: y = json.loads (x)
  • # Kết quả là một từ điển Python: in (y ["tuổi"]))
  • Hãy tự mình thử »
  • Chuyển đổi từ Python sang JSON
  • int
  • float
  • Nếu bạn có một đối tượng Python, bạn có thể chuyển đổi nó thành chuỗi JSON bằng cách sử dụng phương thức json.dumps().
  • Chuyển đổi từ Python sang JSON:
  • # một đối tượng python (dict): x = {& nbsp; "Tên": "John", & nbsp; "Tuổi": 30, & NBSP; "Thành phố": "New York"}

Thí dụ

Nhập mô -đun JSON:

Nhập JSON

Parse JSON - Chuyển đổi từ JSON sang Python
print(json.dumps(["apple", "bananas"]))
print(json.dumps(("apple", "bananas")))
print(json.dumps("hello"))
print(json.dumps(42))
print(json.dumps(31.76))
print(json.dumps(True))
print(json.dumps(False))
print(json.dumps(None))

Nhập JSON


# một số json: x = & nbsp; '{"Tên": "John", "Tuổi": 30, "Thành phố": "New York"}'

# parse x: y = json.loads (x)# Kết quả là một từ điển Python: in (y ["tuổi"]))
Hãy tự mình thử »Chuyển đổi từ Python sang JSON
Nếu bạn có một đối tượng Python, bạn có thể chuyển đổi nó thành chuỗi JSON bằng cách sử dụng phương thức json.dumps().Chuyển đổi từ Python sang JSON:
# một đối tượng python (dict): x = {& nbsp; "Tên": "John", & nbsp; "Tuổi": 30, & NBSP; "Thành phố": "New York"}Chuyển đổi từ Python sang JSON:
# một đối tượng python (dict): x = {& nbsp; "Tên": "John", & nbsp; "Tuổi": 30, & NBSP; "Thành phố": "New York"}# Chuyển đổi thành json: y = json.dumps (x)
# Kết quả là chuỗi JSON: print (y)Bạn có thể chuyển đổi các đối tượng Python của các loại sau, thành chuỗi JSON:
DIGNBạn có thể chuyển đổi các đối tượng Python của các loại sau, thành chuỗi JSON:
DIGNdanh sách
Tuplesợi dây
ĐÚNG VẬYSai

Thí dụ

Không có

Nhập JSON

Parse JSON - Chuyển đổi từ JSON sang Python
  "name": "John",
  "age": 30,
  "married": True,
  "divorced": False,
  "children": ("Ann","Billy"),
  "pets": None,
  "cars": [
    {"model": "BMW 230", "mpg": 27.5},
    {"model": "Ford Edge", "mpg": 24.1}
  ]
}

print(json.dumps(x))

Nhập JSON


# một số json: x = & nbsp; '{"Tên": "John", "Tuổi": 30, "Thành phố": "New York"}'

# parse x: y = json.loads (x)

# Kết quả là một từ điển Python: in (y ["tuổi"]))

Thí dụ

Hãy tự mình thử »

Chuyển đổi từ Python sang JSON

Nhập JSON

# một số json: x = & nbsp; '{"Tên": "John", "Tuổi": 30, "Thành phố": "New York"}'

Thí dụ

# parse x: y = json.loads (x)

# Kết quả là một từ điển Python: in (y ["tuổi"]))

Nhập JSON


# một số json: x = & nbsp; '{"Tên": "John", "Tuổi": 30, "Thành phố": "New York"}'

# parse x: y = json.loads (x)

Thí dụ

# Kết quả là một từ điển Python: in (y ["tuổi"]))

Hãy tự mình thử »

Nhập JSON



var jsData = {
    id:         'E1',
    firstname:  'Peter',
    lastname:   'Funny',
    project: { id: 'P1' },
    activities: [
        { id: 'A1' },
        { id: 'A2' }
    ]};

var jsonData = JSON.stringify(jsData);


$('#click').click(function(){

    $.ajax({
        url: "test/",
        type: "POST",
        data: jsData,
        dataType: "json",
        success: function (data){
        console.log(data);
        },
        error:function(){$('#text').html('FATAL_ERROR')}

    })
})

Đây là mã JS và JSDATA nên được gửi đến máy chủ (Python). Trên máy chủ, tôi nhận được một cái gì đó như {'{id:' e1 ', FirstName:' Peter ', LastName:' Funny ', Project: {id:' p1 '}, hoạt động: [{id:' a1 '}, {{ id: 'a2'}]}; ':' '}

Có cách nào thông minh để có được chuỗi 'Dict bên trong' ra khỏi 'Dict bên ngoài' không?!

Hỏi ngày 28 tháng 4 năm 2013 lúc 15:20Apr 28, 2013 at 15:20

1

Python có một thư viện phân tích cú pháp JSON tích hợp. Thêm

import json
personString = "{'{id:'E1',firstname:'Peter',... " # This would contain your JSON string
person = json.loads( personString ) # This will parse the string into a native Python dictionary, be sure to add some error handling should a parsing error occur

person['firstname'] # Yields 'Peter'
person['activities'] # Yields a list with the activities.
3 cung cấp chức năng phân tích cú pháp JSON cơ bản, có thể được sử dụng như sau:

import json
personString = "{'{id:'E1',firstname:'Peter',... " # This would contain your JSON string
person = json.loads( personString ) # This will parse the string into a native Python dictionary, be sure to add some error handling should a parsing error occur

person['firstname'] # Yields 'Peter'
person['activities'] # Yields a list with the activities.

Thông tin thêm ở đây: http://docs.python.org/2/l Library/json.html

Đã trả lời ngày 28 tháng 4 năm 2013 lúc 15:28Apr 28, 2013 at 15:28

Hướng dẫn parse json stringify in python - phân tích cú pháp json stringify trong python

2

Bởi vì bạn đang sử dụng sai biến!

var jsonData = JSON.stringify(jsData);
..
$.ajax({
      ..,
      contentType: "application/json", //Remember to set this.
      data: jsData,
            ^^^^^^ => Shouldn't you be passing "jsonData" here?

Khi bạn vượt qua một từ điển JavaScript đơn giản, JQuery sẽ mã hóa các khóa và giá trị theo định dạng mã hóa phần trăm. Đó là lý do tại sao bạn đang nhìn thấy chế độ bên trong như chuỗi.

Những gì bạn phải làm lý tưởng (IMO), là vượt qua chuỗi JSON thay vì chuỗi được mã hóa phần trăm một phần.

Lưu ý rằng bạn có thể sẽ phải thay đổi cách máy chủ của bạn đang đọc dữ liệu. Theo cách này, sẽ không còn có tham số yêu cầu HTTP/POST. Chỉ là một chuỗi JSON đơn giản trong phần thực thể HTTP.

Đã trả lời ngày 28 tháng 4 năm 2013 lúc 15:46Apr 28, 2013 at 15:46

Hướng dẫn parse json stringify in python - phân tích cú pháp json stringify trong python

UltrainStincultrainStinctUltraInstinct

42.4K12 Huy hiệu vàng78 Huy hiệu bạc102 Huy hiệu đồng12 gold badges78 silver badges102 bronze badges

1

Thay thế điều này

$('#click').click(function(){
    $.ajax({
        url: "test/",
        type: "POST",
        data: jsData,
        dataType: "json",
        success: function (data){
        console.log(data);
        },
        error:function(){$('#text').html('FATAL_ERROR')}

    })
})

Với cái này

$('#click').click(function(){
    $.ajax({
        url: "test/",
        type: "POST",
        data: {"jsData": jsData },
        dataType: "json",
        success: function (data){
        console.log(data);
        },
        error:function(){$('#text').html('FATAL_ERROR')}

    })
})

Để bây giờ bạn sẽ có thể nhận được jsdata trong yêu cầu.post.get ('jsdata') hoặc requst.get.get ('jsdata') và bạn chỉ cần phân tích dữ liệu mà bạn nhận được trong khóa jsdata .

Và bạn tốt để đi.

Đã trả lời ngày 23 tháng 6 lúc 12:06Jun 23 at 12:06

Hướng dẫn parse json stringify in python - phân tích cú pháp json stringify trong python

Làm cách nào để phân tích chỉ số JSON trong Python?

Parse JSON - Chuyển đổi từ JSON sang Python Nếu bạn có chuỗi JSON, bạn có thể phân tích nó bằng cách sử dụng phương thức json.Loads ().Kết quả sẽ là một từ điển Python.using the json.loads() method. The result will be a Python dictionary.

Làm thế nào để bạn phân tích tệp JSON trong Python?

Nếu bạn cần phân tích một chuỗi JSON trả về từ điển, thì bạn có thể sử dụng phương thức json.Loads ().Nếu bạn cần phân tích tệp JSON trả về từ điển, thì bạn có thể sử dụng JSON.phương thức tải ().json. loads() method. If you need to parse a JSON file that returns a dictionary, then you can use the json. load() method.

JSON parse json Stringify làm gì?

Phương thức json.parse () phân tích chuỗi JSON, xây dựng giá trị javascript hoặc đối tượng được mô tả bởi chuỗi.Một hàm reviver tùy chọn có thể được cung cấp để thực hiện chuyển đổi trên đối tượng kết quả trước khi nó được trả về.parses a JSON string, constructing the JavaScript value or object described by the string. An optional reviver function can be provided to perform a transformation on the resulting object before it is returned.

Làm cách nào để xâu chuỗi một chuỗi trong JSON?

Sử dụng hàm javaScript json.Stringify () để chuyển đổi nó thành một chuỗi.const myjson = json.Stringify (obj);Kết quả sẽ là một chuỗi theo ký hiệu JSON.. const myJSON = JSON.stringify(obj); The result will be a string following the JSON notation.