Итак, вы хотите знать, как обрабатывать преобразование объектов JSON в Python? Продолжайте читать и узнайте, как это сделать!
Что такое JSON?
JSON расшифровывается как «Обозначение объектов JavaScript» и становится все более популярным способом передачи данных, особенно по сети.
«Объект» в JavaScript всегда заключен в фигурные скобки и содержит одну или несколько пар ключ-значение. «Ключ» — это метка для данного фрагмента данных, а «значение» — это сами данные. Ключ и значение присоединяются друг к другу двоеточием, а пары ключ-значение разделяются запятыми.
Вот пример объекта JavaScript в формате JSON:
{ "name": "Aaron", "age": 44, "is_bald": false, "money": null, "favorite_colors": ["green", "blue"] }
Как видите, «ключ» всегда представляет собой строку, заключенную в кавычки. Например, «имя», «возраст» и «деньги» — все это ключи. Однако «значение» может быть любым типом данных JavaScript: строкой, например «Aaron», целым числом, например 44, логическим значением, например false. , массив, например [“зеленый”, “синий”] и т. д.
Благодаря универсальности объектов JavaScript данные JSON можно использовать для представления практически всего, поэтому JSON так популярен!
Использование JSON в Python
Есть много случаев, когда полезно прочитать файл JSON в «dict» (словарь) Python или преобразовать словарь Python в строку JSON. К счастью, Python предоставляет библиотеку, которую мы можем импортировать, чтобы легко обрабатывать файлы JSON!
Сначала импортируйте библиотеку json со следующей строкой:
import json
Теперь предположим, что у вас есть файл, содержащий некоторые данные JSON (например, данные, перечисленные выше). Вы можете открыть файл JSON для чтения с помощью функции open(), заменив ‹my_file› на имя вашего файла JSON:
json_string = open('<my_file>.json')
Убедитесь, что файл JSON находится в той же папке/каталоге, что и ваш файл Python, иначе вам нужно будет добавить путь к файлу перед именем файла, чтобы ваш код мог найти файл.
Если вы не хотите сохранять свой JSON в файл .json, вы можете определить его как переменную непосредственно в Python:
json_string = """{ "name": "Aaron", "age": 44, "is_bald": false, "money": null, "favorite_colors": ["green", "blue"] }"""
Чтобы превратить строку JSON в словарь Python, используйте функцию json.loads():
json_dict = json.loads(json_string)
Теперь вы можете получать доступ и записывать данные, содержащиеся в объекте JSON, точно так же, как и в любом другом словаре Python!
#Read the "name" field of the JSON dict: name = json_dict["name"] #Update the "money" field of the JSON dict: json_dict["money"] = 3000.0
Наконец, если вы хотите преобразовать словарь Python обратно в JSON, просто используйте функцию json.dumps():
new_json_string = json.dumps(json_dict)
Вот полный код из нашего примера:
import json """ JSON String defined directly. Note: you can also read from a .json file as explained above using json_string = open('<my_file>.json') """ json_string = """{ "name": "Aaron", "age": 44, "is_bald": false, "money": null, "favorite_colors": ["green", "blue"] }""" #Convert the JSON String into a Python Dictionary: json_dict = json.loads(json_string) #Read the "name" field of the JSON dict: name = json_dict["name"] #Update the "money" field of the JSON dict: json_dict["money"] = 3000.0 #Save the changes to a new JSON String: new_json_string = json.dumps(json_dict) #Print the results: print(new_json_string)
Спасибо, что прочитали, и не стесняйтесь подписаться на меня, чтобы получать новые полезные советы по программированию!