Hướng dẫn python create json object from string - python tạo đối tượng json từ chuỗi


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

>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
0, 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

>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
1.

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

>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
1.
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

>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
1.
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
    >>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
    2.
  • 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
>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
2.
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



JSON là viết tắt của ký hiệu đối tượng JavaScript. Mặc dù tên của nó chỉ ra rằng nó được liên kết với ngôn ngữ lập trình JavaScript, định dạng JSON độc lập với ngôn ngữ và thường được sử dụng trong nhiều ngôn ngữ lập trình khác nhau.

Tệp JSON là gì?

Các tệp JSON thường được sử dụng trong việc truyền dữ liệu giữa các máy tính. Chẳng hạn, khi tải xuống một tệp từ API, bạn thường cần phải xử lý các tệp JSON. Dưới đây là một bài viết tuyệt vời giải thích việc tải xuống một tệp trong Python từ API.

Sau đây là một ví dụ về tệp JSON:

{
	"employee": [
		{
			"FirstName": "John",
			"LastName": "Doe",
			"Age": "29",
			"Profession": "Engineer"

		},
		{
			"FirstName": "Jane",
			"LastName": "Doe",
			"Age": "27",
			"Profession": "Doctor"
		}
	]
}

Các tệp lưu trữ dữ liệu ở định dạng JSON được gọi là tệp JSON. Các tệp này dựa trên văn bản, có thể đọc được và dễ xử lý-tất cả đều làm cho chúng rất phổ biến.

Trong bài viết này, chúng tôi sẽ tìm hiểu cách chuyển đổi một chuỗi thành JSON trong Python và cách tạo các tệp JSON từ các đối tượng Python.

Làm việc với các tệp JSON trong Python

Python có một thư viện tích hợp có tên

>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
0 cung cấp các phương pháp đơn giản và hiệu quả để làm việc với các tệp JSON. Hãy cùng đi qua một số ví dụ trình bày cách chuyển đổi một chuỗi thành JSON trong Python và ngược lại.

Từ JSON đến đối tượng Python: Phân biệt

Sau đây là chuỗi JSON:

>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'

Chúng ta có thể sử dụng phương thức

>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
9 của thư viện
>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
0 để chuyển đổi chuỗi này thành đối tượng Python:

>>> import json
>>> myobject = json.loads(example)

Chúng tôi vừa chuyển đổi dữ liệu được mã hóa JSON thành một đối tượng Python. Quá trình này được gọi là deserializing. Đối tượng Python kết quả là một từ điển. Một từ điển Python bao gồm các cặp giá trị khóa và chúng ta có thể dễ dàng truy cập các mục của nó bằng các khóa. Ví dụ: nếu chúng ta muốn truy cập

>>> import json
>>> myobject = json.loads(example)
1 trong từ điển
>>> import json
>>> myobject = json.loads(example)
2, chúng ta sẽ viết:

>>> myobject["FirstName"]

'John'

Nếu chúng ta có một tệp JSON và muốn biến nó thành một đối tượng Python, chúng ta có thể sử dụng phương thức

>>> import json
>>> myobject = json.loads(example)
3. Hãy xem nhanh tập tin JSON của nhân viên của người Viking khi bắt đầu bài viết. Khối mã sau đây đọc tệp này và lưu nó vào từ điển Python.

>>> with open("employee.json", "r") as read_file:
...     employee = json.load(read_file)
...
>>> print(employee)

{'employee': [{'FirstName': 'John', 'LastName': 'Doe', 'Age': '29', 'Profession': 'Engineer'}, {'FirstName': 'Jane', 'LastName': 'Doe', 'Age': '27', 'Profession': 'Doctor'}]}

Bây giờ

>>> import json
>>> myobject = json.loads(example)
4 là một đối tượng từ điển Python.

Điều quan trọng là phải nhấn mạnh sự khác biệt giữa các phương thức thư viện

>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
0
>>> import json
>>> myobject = json.loads(example)
6) và
>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
9. Phương thức tải được sử dụng để tạo đối tượng Python từ tệp JSON, trong khi phương thức
>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
9 chuyển đổi chuỗi JSON thành đối tượng Python.load method is used for creating a Python object from a JSON file, whereas the
>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
9 method converts a JSON string to a Python object.

Từ đối tượng Python đến chuỗi JSON: tuần tự hóa

Giống như chúng ta có thể tạo một đối tượng Python từ tệp JSON, chúng ta có thể chuyển đổi một đối tượng Python thành chuỗi hoặc tệp JSON. Quá trình này được gọi là tuần tự hóa.

Phương pháp

>>> import json
>>> myobject = json.loads(example)
9 chuyển đổi từ điển Python thành chuỗi JSON. Trong phần Deserializing, chúng tôi đã tạo ra một từ điển gọi là
>>> import json
>>> myobject = json.loads(example)
2. Nó có thể được chuyển đổi trở lại chuỗi JSON như sau:

>>> json.dumps(myobject)
'{"FirstName": "John", "LastName": "Doe", "Age": 29, "Profession": "Engineer"}'

Đầu ra là một chuỗi (lưu ý các trích dẫn đơn xung quanh dấu ngoặc xoăn), vì vậy chúng tôi không thể truy cập vào một cặp giá trị khóa cụ thể như chúng tôi làm với từ điển.

Chuỗi rất đơn giản này không khó đọc. Tuy nhiên, chuỗi JSON có thể dài hơn nhiều và có các bộ phận lồng nhau. Đối với những trường hợp như vậy, phương pháp

>>> import json
>>> myobject = json.loads(example)
9 cung cấp một cách in dễ đọc hơn. Chúng ta có thể in chuỗi này đẹp bằng cách đặt tham số thụt tùy chọn:

>>> print(json.dumps(myobject, indent=3))

{
   "FirstName": "John",
   "LastName": "Doe",
   "Age": 29,
   "Profession": "Engineer"
}

Phương thức

>>> import json
>>> myobject = json.loads(example)
9 cũng có tham số để sắp xếp theo khóa:

>>> print(json.dumps(myobject, indent=3, sort_keys=True))

{
   "Age": 29,
   "FirstName": "John",
   "LastName": "Doe",
   "Profession": "Engineer"
}

Các tệp JSON thường được sử dụng để tuần tự hóa (Pickling), ví dụ: vì khi bạn muốn duy trì một số dữ liệu giữa các lần chạy của ứng dụng của bạn. Bạn có thể tìm hiểu thêm về tuần tự hóa đối tượng trong bài viết này.

Tạo tệp JSON với Dump ()

Phương thức

>>> import json
>>> myobject = json.loads(example)
9 chuyển đổi một đối tượng Python thành chuỗi được định dạng JSON. Chúng ta cũng có thể tạo một tệp JSON từ dữ liệu được lưu trữ trong từ điển Python. Phương pháp thực hiện nhiệm vụ này là
>>> myobject["FirstName"]

'John'
4.

Hãy để sử dụng phương thức

>>> myobject["FirstName"]

'John'
4 để tạo tệp JSON. Chúng tôi sẽ sử dụng từ điển nhân viên mà chúng tôi đã tạo trong phần trước:

with open("new_employee.json", "w") as write_file:
    json.dump(employee, write_file, indent=4)

Điều này tạo ra một tệp được gọi là

>>> myobject["FirstName"]

'John'
6 trong thư mục làm việc hiện tại của bạn và mở nó ở chế độ ghi. Sau đó, chúng tôi sử dụng phương pháp
>>> myobject["FirstName"]

'John'
4 để tuần tự hóa từ điển Python.

Phương pháp

>>> myobject["FirstName"]

'John'
4 có hai đối số vị trí. Đầu tiên là đối tượng lưu trữ dữ liệu được tuần tự hóa (ở đây, từ điển Python). Cái thứ hai là tệp để viết dữ liệu tuần tự hóa. Tham số
>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
4 là tùy chọn.

In trong dòng lệnh

Phương thức

>>> with open("employee.json", "r") as read_file:
...     employee = json.load(read_file)
...
>>> print(employee)

{'employee': [{'FirstName': 'John', 'LastName': 'Doe', 'Age': '29', 'Profession': 'Engineer'}, {'FirstName': 'Jane', 'LastName': 'Doe', 'Age': '27', 'Profession': 'Doctor'}]}
0 của thư viện
>>> example = '{"FirstName":"John", "LastName":"Doe","Age":29, "Profession":"Engineer"}'
0 cho phép các tệp JSON in đẹp trong dòng lệnh. Hãy để thử nó trên tệp
>>> myobject["FirstName"]

'John'
6 mà chúng tôi đã tạo trong phần trước.

Bước đầu tiên là mở giao diện dòng lệnh. Sau đó, chúng ta cần thay đổi thư mục thành vị trí mà tệp

>>> myobject["FirstName"]

'John'
6 được lưu.

Lệnh sau đây sẽ in tệp JSON ở định dạng đẹp, rõ ràng:

python -m json.tool new_employee.json

Hình ảnh sau đây cho thấy nó trông như thế nào trong dấu nhắc lệnh Windows.

Hướng dẫn python create json object from string - python tạo đối tượng json từ chuỗi

Tìm hiểu thêm về JSON và Python

Chúng tôi đã đề cập đến cách đọc và viết các tệp JSON bằng Python. Thư viện JSON tích hợp giúp bạn dễ dàng thực hiện cả hai. Một trong những lợi thế của Python là sự lựa chọn phong phú của các thư viện tích hợp và bên thứ ba giúp đơn giản hóa hầu hết các nhiệm vụ.

Nếu bạn đang học hoặc lên kế hoạch học Python, chương trình học của chúng tôi với Python Track là một cách tuyệt vời để bắt đầu. Nó được thiết kế cho người mới bắt đầu và chứa 5 khóa học tương tác. Ưu điểm của việc học với một khóa học tương tác là bạn có được mã viết thực tế, thực hành; Điều này là cần thiết để học một ngôn ngữ lập trình.

LearnPython.com cũng cung cấp toàn bộ khóa học dành riêng cho các tệp JSON trong Python. Khóa học cũng tương tác và chứa 35 bài tập. Nếu bạn muốn thực hành các khái niệm mà chúng tôi đã thảo luận trong bài viết này, khóa học này là dành cho bạn. Học hỏi!

Làm cách nào để chuyển đổi một chuỗi thành JSON?

Dữ liệu chuỗi có thể dễ dàng chuyển đổi thành json bằng hàm Stringify () và cũng có thể được thực hiện bằng cách sử dụng eval (), chấp nhận biểu thức javaScript mà bạn sẽ tìm hiểu trong hướng dẫn này.using the stringify() function, and also it can be done using eval() , which accepts the JavaScript expression that you will learn about in this guide.

Làm thế nào để bạn tạo một đối tượng JSON trống trong Python?

Làm thế nào để bạn tuyên bố một json trống trong Python ?..
Nếu 'mydata' theo yêu cầu.BƯU KIỆN:.
Dữ liệu = json.Tải (Yêu cầu. Đăng ['MyData']).
data = {} # hoặc data = none ..

Làm thế nào để bạn tạo một tệp JSON trong Python?

Python JSON: Tạo một tệp JSON mới từ tệp JSON hiện có..
Giải pháp mẫu:-.
Mã Python: Nhập JSON với Open ('States.json') dưới dạng f: state_data = json.load (f) cho state trong state_data ['state']: del state, 'w') như f: json.dump (state_data, f, thụt lề = 2) ....
Flowchart:.

Object json () trong Python là gì?

Ký hiệu đối tượng script Java (JSON) là định dạng dữ liệu trọng lượng nhẹ với nhiều điểm tương đồng với từ điển Python.Các đối tượng JSON rất hữu ích vì các trình duyệt có thể nhanh chóng phân tích chúng, điều này lý tưởng để vận chuyển dữ liệu giữa máy khách và máy chủ.a light weight data format with many similarities to python dictionaries. JSON objects are useful because browsers can quickly parse them, which is ideal for transporting data between a client and a server.