Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Нужен рабочий код на Python

Линар Мамбетов Ученик (61), на голосовании 1 год назад
Перед вами имеется программа, которая десериализует JSON строку к питоновскому значению

Сама JSON строка оформлена неправильно, поэтому в программе возникает ошибка json.decoder.JSONDecodeError

Ваша задача найти и исправить ошибки в оформлении JSON строки. Остальную часть программы не нужно менять
Голосование за лучший ответ
Дмитрий Губарев Профи (706) 1 год назад
где программа?
Линар МамбетовУченик (61) 1 год назад
import json


json_string = '''
{
"customers": [
{
'userid': 123456,
"username": "Allie Hsu",
"phone": [
"000-001-0002",
"000-002-0002"
],
"is_vip": true
},
[
"userid": 223678,
"username": "Donald Duck",
"phone": null,
"is_vip": false,
]
]
}
'''

data = json.loads(json_string)
print(data['customers'][0]['username'])
Линар Мамбетов, https://www.online-python.com/SVbA0YDcR2
Дмитрий ГубаревПрофи (706) 1 год назад
Проблема в оформлении JSON строки. Несколько объектов в массиве customers оформлены в неправильном формате.

Вот исправленный код:
 import json 

json_string = '''
{
"customers": [
{
"userid": 123456,
"username": "Allie Hsu",
"phone": [
"000-001-0002",
"000-002-0002"
],
"is_vip": true
},
{
"userid": 223678,
"username": "Donald Duck",
"phone": null,
"is_vip": false
}
]
}
'''

data = json.loads(json_string)
print(data['customers'][0]['username'])
Линар МамбетовУченик (61) 1 год назад
спасибо
Professional Professional Мудрец (15971) 1 год назад
К сожалению, вы не предоставили примера JSON строки, поэтому я не могу непосредственно исправить ошибки в ней. Однако, я могу предоставить вам рабочий код на Python для десериализации JSON строки.

```python
import json

# Пример JSON строки
json_string = '{"name": "John", "age": 30, "city": "New York"}'

try:
# Десериализация JSON строки
data = json.loads(json_string)

# Получение значений из десериализованного объекта
name = data["name"]
age = data["age"]
city = data["city"]

# Вывод значений
print("Name:", name)
print("Age:", age)
print("City:", city)

except json.decoder.JSONDecodeError as e:
print("Ошибка десериализации JSON строки:", str(e))
```

Вам необходимо поместить вашу JSON строку в переменную `json_string`. Затем программа попытается десериализовать JSON строку и вывести значения полей `name`, `age` и `city`. Если в JSON строке есть ошибки, будет выведено сообщение об ошибке десериализации.

Если у вас есть конкретная JSON строка, в которой вы не можете найти и исправить ошибки, пожалуйста, предоставьте эту строку, и я помогу вам с ее исправлением.
Похожие вопросы