JSON, viết tắt của JavaScript Object Notation, là một định dạng dữ liệu được sử dụng để truyền và nhận dữ liệu giữa các máy chủ và ứng dụng web. Nó lưu trữ dữ liệu dưới dạng một chuỗi được trích dẫn trong một khóa. cặp giá trị trong dấu ngoặc nhọn. Python cung cấp hỗ trợ cho các đối tượng JSON thông qua gói tích hợp có tên là “json. ” Với gói JSON Python, bạn có thể chuyển đổi các tệp JSON thành các đối tượng Python và ngược lại, để chia sẻ dữ liệu trên các ứng dụng web Python
Gói JSON Python thường lưu trữ dữ liệu dưới dạng chuỗi, nhưng nó cũng có thể lưu trữ dữ liệu dưới dạng tệp. Để làm việc với các tệp JSON và chuyển đổi các đối tượng Python thành JSON, bạn cần nhập mô-đun Python json
Làm cách nào để ghi JSON vào một tệp?
Sau khi nhập mô-đun JSON Python, bạn có thể ghi JSON vào một tệp. Gói cung cấp một phương thức gọi là json. dump[] cho phép ghi JSON vào một tệp. json. hàm dump[] cho phép ghi JSON vào tệp mà không cần chuyển đổi. json. phương thức dump[] chấp nhận hai đối số
- Từ điển. Tên từ điển
- Con trỏ tệp. Con trỏ tệp ở chế độ mở hoặc nối thêm
Thí dụ. Viết JSON vào tệp bằng json. dump[] trong Gói Python JSON
Trong đoạn mã dưới đây, bạn sẽ tạo một tệp có tên ví dụ. json và chuyển từ điển thành đối tượng JSON bằng cách sử dụng json. phương thức bãi []. Đây là cách nó thực hiện
nhập json
# Khởi tạo từ điển
dic_exm ={
"Tên". "Học đơn giản",
"cuộn_không". 1,
"cgpa". 9. 68,
"Số điện thoại". "1231252123"
}
với open["ví dụ. json", "w"] dưới dạng tệp ngoài
json. kết xuất [dic_exm, tệp ngoài]
đầu ra
Làm cách nào để chuyển đổi từ JSON sang Python?
Mô-đun JSON Python cũng cho phép bạn chuyển đổi Chuỗi JSON thành Python bằng cách sử dụng hàm json. phương thức tải []. Kết quả của việc chuyển đổi này sẽ là một từ điển
Khóa đào tạo Python
Tìm hiểu về thao tác dữ liệu trong Python Khám phá khóa họcThí dụ. Chuyển đổi Chuỗi JSON thành Từ điển Python
nhập json
# Chuỗi JSON ngẫu nhiên
i = '{ "tên". "Rahul", "tuổi". 23, "thành phố". "Mumbai"}'
# Chuyển đổi JSON sang Python
j = json. tải[i]
# Trích xuất các giá trị từ Từ điển kết quả
in[j["tên"]]
in[j["tuổi"]]
in [j ["thành phố"]]
in[j]
đầu ra
Nhiều loại đối tượng Python có thể được chuyển đổi thành chuỗi JSON
Với JSON Python, bạn có thể chuyển đổi các đối tượng Python sau thành chuỗi JSON
- mệnh lệnh
- danh sách
- tuple
- str
- int
- trôi nổi
- ĐÚNG VẬY
- SAI
- Không có
Mã bên dưới sử dụng tất cả các đối tượng Python được đề cập ở trên và chuyển đổi chúng thành JSON bằng cách sử dụng. phương thức dumps[] từ gói JSON Python
nhập json
in [json. bãi [{"tên". "Simplilearning", "tuổi tác". 5}]]
in [json. bãi rác[["Mercedes Benz", "BMW"]]]
in [json. bãi rác[["Trái cây", "Nước trái cây"]]]
in [json. bãi ["HI. "]]
in [json. bãi rác[120]]
in [json. bãi[19. 15]]
in [json. bãi [Đúng]]
in [json. bãi [Sai]]
in [json. bãi rác[Không có]]
đầu ra
Như bạn có thể thấy từ đoạn mã trên, sau khi chuyển đổi, các đối tượng Python chuyển thành JSON tương đương của chúng, đó là
con trăn
JSON
mệnh lệnh
Mục tiêu
danh sách
Mảng
tuple
Mảng
str
Sợi dây
int
Số
trôi nổi
Số
ĐÚNG VẬY
ĐÚNG VẬY
SAI
sai
Không có
vô giá trị
Làm cách nào để chuyển đổi từ Python sang JSON?
Tương tự với json. dump[], json Python cũng cung cấp json. phương thức bãi []. Sự khác biệt duy nhất giữa hai là json. dumps[] chuyển đổi từ điển thành đối tượng JSON và json. dump[] ghi JSON vào tệp mà không cần chuyển đổi. json. phương thức dumps[] chấp nhận hai đối số sau
- Từ điển. Tên từ điển
- thụt lề. Số lượng đơn vị cho thụt đầu dòng
Bên cạnh hai điều này, json. phương thức dumps[] cũng chấp nhận một số tham số khác để định dạng và sắp xếp kết quả. Bạn sẽ xem xét các thông số đó sau trong bài viết này
Thí dụ. Chuyển đổi Python sang JSON bằng json. dumps[] từ Gói JSON Python
Đối với ví dụ này, bạn sẽ sử dụng cùng một ví dụ đã được sử dụng khi học json. phương thức dump[] nhưng lần này với json. phương thức bãi []
nhập json
# Khởi tạo từ điển
dic_exm ={
"Tên". "Học đơn giản",
"cuộn_không". 1,
"cgpa". 9. 68,
"Số điện thoại". "1231252123"
}
# Tuần tự hóa json
json_obj = json. bãi [dic_exm, thụt lề = 4]
# Viết theo mẫu. json
với open["ví dụ. json", "w"] dưới dạng tệp ngoài
outfile. viết [json_obj]
đầu ra
Làm cách nào để định dạng kết quả JSON Python?
Trước khi bắt đầu, hãy xem đoạn mã dưới đây
nhập json
tôi = {
"tên". "Rahul",
"tuổi". 15,
"đã cưới". ĐÚNG VẬY,
"ly hôn". SAI,
"những đứa trẻ". ["Hari","Sam"],
"anh em". Không có,
"ô tô". [
{"mô hình". "Mercedes-Benz", "mpg". 27. 5},
{"mô hình". "Ferrari", "mpg". 24. 1}
]
}
in [json. bãi rác[i]]
đầu ra
Như bạn có thể thấy trong đoạn mã trên, bạn nhận được một chuỗi JSON, nhưng nó không thể đọc được. Do đó, gói JSON Python cho phép định dạng kết quả để giúp chúng dễ đọc hơn bằng cách thụt đầu dòng và dấu phân cách
Khoa học dữ liệu MIỄN PHÍ với khóa học Python
Bắt đầu học Khoa học dữ liệu với Python MIỄN PHÍ Bắt đầu họcVí dụ. Định dạng kết quả JSON Python với thụt đầu dòng
Đối số thụt lề trong json. phương thức dumps[] sẽ thụt lề kết quả từ bên trái theo các số được đề cập. Bạn sẽ sử dụng ví dụ tương tự như trên, nhưng lần này sử dụng thụt đầu dòng để thấy sự khác biệt
nhập json
tôi = {
"tên". "Rahul",
"tuổi". 15,
"đã cưới". ĐÚNG VẬY,
"ly hôn". SAI,
"những đứa trẻ". ["Hari","Sam"],
"anh em". Không có,
"ô tô". [
{"mô hình". "Mercedes-Benz", "mpg". 27. 5},
{"mô hình". "Ferrari", "mpg". 24. 1}
]
}
in [json. bãi [i, thụt lề = 8]]
đầu ra
Như bạn có thể thấy trong đoạn mã trên, kết quả được thụt vào và dễ đọc hơn nhiều
Thí dụ. Định dạng kết quả JSON Python bằng dấu phân cách
Tương tự như thụt lề, json. phương thức dumps[] cũng nhận đối số của dấu phân cách. Bạn có thể sử dụng nó để bao gồm các loại dấu tách khác nhau để định dạng kết quả. Chẳng hạn, giá trị dấu phân cách mặc định [“, ”, ”. ”] có nghĩa là sử dụng dấu phẩy và dấu cách để phân tách từng đối tượng từ điển và sử dụng dấu hai chấm và dấu cách để phân tách các khóa khỏi giá trị của chúng. Đây là một ví dụ cho việc sử dụng đối số dấu phân cách
nhập json
tôi = {
"tên". "Rahul",
"tuổi". 15,
"anh em". Không có,
"ô tô". [
{"mô hình". "Mercedes-Benz", "mpg". 27. 5},
{"mô hình". "Ferrari", "mpg". 24. 1}
]
}
in [json. bãi chứa [i, thụt lề = 8, dấu phân cách = [". "," ="]]]
đầu ra
Như bạn có thể thấy trong đầu ra ở trên, các đối tượng được phân tách bằng dấu “. dấu ” và phím. các cặp giá trị được phân tách bằng ký tự “=”
Làm cách nào để đặt hàng các kết quả JSON Python?
Bạn cũng có thể chuyển tham số sort_keys để sắp xếp các kết quả JSON Python. Để sắp xếp kết quả, bạn có thể chuyển true vào tham số. Khi bạn pass true nó sẽ sắp xếp kết quả theo thứ tự tăng dần. Ví dụ bên dưới sử dụng tham số sort_keys để sắp xếp đầu ra
Thí dụ. Sử dụng tham số sort_keys để sắp xếp kết quả JSON Python
nhập json
tôi = {
"tên". "Rahul",
"tuổi". 15,
"anh em". Không có,
"ô tô". [
{"mô hình". "Mercedes-Benz", "mpg". 27. 5},
{"mô hình". "Ferrari", "mpg". 24. 1}
]
}
in [json. bãi chứa [i, thụt lề = 8, sort_keys = True]]
đầu ra
Như bạn có thể thấy trong đoạn mã trên, nó hiển thị kết quả theo thứ tự bảng chữ cái
Mong muốn chuyển sang lĩnh vực lập trình?
Phần kết luận
Trong bài viết này, bạn đã tìm hiểu mọi thứ về gói JSON Python. Bạn cũng đã xem cách chuyển đổi JSON sang Python và ngược lại với các ví dụ khác nhau. Có kiến thức chuyên sâu về JSON Python sẽ giúp bạn lưu trữ và truyền dữ liệu liền mạch giữa các máy chủ và ứng dụng web Python của bạn.
Python là một ngôn ngữ lập trình phổ biến rộng rãi. Nếu bạn muốn trở thành một Python hoặc một nhà phát triển full-stack, bạn phải nắm rõ những kiến thức cơ bản của mình. Bạn có thể tham khảo Hướng dẫn Python cho người mới bắt đầu của Simplilearn để có nền tảng vững chắc. Khi bạn đã hoàn thành việc đó, bạn có thể chọn tham gia Khóa học cấp chứng chỉ Python trực tuyến. Khóa học sẽ giúp bạn hiểu các khái niệm Python cơ bản và nâng cao với kinh nghiệm thực hành trên một số khung để giúp bạn vượt trội trong lĩnh vực này
Có bất kỳ câu hỏi cho chúng tôi? . Các chuyên gia của chúng tôi sẽ sớm liên hệ lại với bạn
Giới thiệu về tác giả
Ravikiran A S làm việc với Simplilearn với tư cách là Nhà phân tích nghiên cứu. Anh ấy là một người đam mê nhiệt tình, luôn săn lùng những công nghệ mới nhất. Anh ấy thành thạo Ngôn ngữ lập trình Java, Dữ liệu lớn và các Khung dữ liệu lớn mạnh mẽ như Apache Hadoop và Apache Spark