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

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

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

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

Ваша задача найти и исправить ошибки в оформлении JSON строки. Остальную часть программы не нужно менять
Голосование за лучший ответ
Дмитрий Губарев Профи (664) 10 месяцев назад
где программа?
Линар МамбетовУченик (61) 10 месяцев назад
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
Дмитрий ГубаревПрофи (664) 10 месяцев назад
Проблема в оформлении 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) 10 месяцев назад
спасибо
Professional Professional Мудрец (15209) 10 месяцев назад
К сожалению, вы не предоставили примера 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 строка, в которой вы не можете найти и исправить ошибки, пожалуйста, предоставьте эту строку, и я помогу вам с ее исправлением.
Похожие вопросы