Tôi đã thực hiện cùng một nhiệm vụ, ngoại trừ việc tôi phải đọc dữ liệu từ tệp JSON thay vì một biến như của bạn, đây là cách tôi đã làm điều đó:
import json
with open['movie.json', encoding='utf8'] as JSONFile:
data = json.load[JSONFile]
print[len[data['movie'][0]]]
Và phần tử JSON mẫu của tôi trong tệp trông như thế này:
{
"movie": [
{
"Id": 1,
"Title": "Inception",
"Overview": "Cobb, a skilled thief who commits corporate espionage by infiltrating the subconscious of his targets is offered a chance to regain his old life as payment for a task considered to be impossible: \"inception\", the implantation of another person's idea into a target's subconscious.",
"Tagline": "Your mind is the scene of the crime.",
"Budget": 160000000.0000,
"Revenue": 825532764.0000,
"ImdbUrl": "\/\/www.imdb.com\/title\/tt1375666",
"TmdbUrl": "\/\/www.themoviedb.org\/movie\/27205",
"PosterUrl": "\/\/image.tmdb.org\/t\/p\/w342\/\/9gk7adHYeDvHkCSEqAvQNLV5Uge.jpg",
"BackdropUrl": "\/\/image.tmdb.org\/t\/p\/original\/\/s3TBrRGB1iav7gFOCNx3H31MoES.jpg",
"OriginalLanguage": "en",
"ReleaseDate": "2010-07-15T00:00:00",
"RunTime": 148,
"Price": 9.90,
"CreatedDate": "2021-04-03T16:51:30.1633333",
"UpdatedDate": null,
"UpdatedBy": null,
"CreatedBy": null,
"genres": [
{
"id": 1,
"name": "Adventure"
},
{
"id": 6,
"name": "Action"
},
{
"id": 13,
"name": "Science Fiction"
}
]
}]
Trong hướng dẫn Python này, chúng ta sẽ xem làm thế nào chúng ta có thể nhận được tất cả các khóa trong đối tượng JSON này và tất cả các giá trị của các khóa.
Được rồi, vì vậy hãy để tôi bắt đầu, hãy để tôi lấy một tệp python trống ở đây, vì vậy vâng, vì vậy hãy để tôi lưu tệp này trước làm ví dụ.py.
here, so yeah so let me save this file first as example.py.
Tải JSON
Vì nó là một JSON, tôi cần nhập gói này có tên là JSON. Điều này cho phép bạn chơi xung quanh với JSON. Sau đó, nó có sẵn trong tệp Python cụ thể này.json. This lets you play around with json. Then it is available in this particular Python file.
import json
Nhập chế độ FullScreenen EXIT Mode FullScreen
Phải, hãy thực hiện đường dẫn tệp đó và cố gắng mở nó bằng tệp mở dưới dạng JSON.
with open["C:\\pythonPrograms\\example.json"] as jsonFile:
Nhập chế độ FullScreenen EXIT Mode FullScreen
Phải, hãy thực hiện đường dẫn tệp đó và cố gắng mở nó bằng tệp mở dưới dạng JSON.
{"emp_details":[
{"name": "a",
"id": "123"
},
{"name":"b",
"id":"345"
}
]
}
Nhập chế độ FullScreenen EXIT Mode FullScreen
Phải, hãy thực hiện đường dẫn tệp đó và cố gắng mở nó bằng tệp mở dưới dạng JSON.
Điều đó sẽ thực hiện giải mã JSON. Tệp JSON của chúng tôi trông như thế này:
Bạn cần đặt tên tệp, vì vậy đây là tên tệp của tôi. Nó nên có các dấu gạch chéo kép chứ không phải là dấu gạch chéo duy nhất, vì vậy một khi chúng tôi có nó bằng thư viện JSON mà chúng tôi đã nhập, bạn cần phải tải đối tượng JSON. Đi nào.
data = json.load[jsonFile]
Nhập chế độ FullScreenen EXIT Mode FullScreen
Sau đó, bạn có một đối tượng Python. Bây giờ bạn có thể nhận được các khóa và giá trị. Mã dưới đây phụ thuộc vào tệp JSON của bạn trông như thế nào. Trong tệp JSON của chúng tôi có một tiêu đề có tên EMP_DETAILS.
jsonData = data["emp_details"]
keys = x.keys[]
values = x.values[]
Nhập chế độ FullScreenen EXIT Mode FullScreen
Điều đó cung cấp cho chúng tôi mã này:
import json
with open["test.json"] as jsonFile:
data = json.load[jsonFile]
jsonData = data["emp_details"]
for x in jsonData:
keys = x.keys[]
print[keys]
values = x.values[]
print[values]
Nhập chế độ FullScreenen EXIT Mode FullScreen
Nó sẽ xuất hiện:
{'name': 'a', 'id': '123'}
dict_keys[['name', 'id']]
dict_values[['a', '123']]
{'name': 'b', 'id': '345'}
dict_keys[['name', 'id']]
dict_values[['b', '345']]
Nhập chế độ FullScreenen EXIT Mode FullScreen
Nếu bạn muốn, bạn có thể lặp qua các phím và giá trị bên trong vòng lặp, để thực hiện định dạng.
Ở đây chúng tôi sử dụng một vòng lặp để lặp lại các khóa và giá trị. Nếu tệp JSON của bạn nhỏ giống như tệp trong ví dụ này, bạn không nhất thiết phải sử dụng một vòng lặp.
Đó là tất cả :-]