Python: Как я могу разобрать {apple: "1", orange: "2"} в словарь? - PullRequest
5 голосов
/ 04 сентября 2011

Я получил вывод, ему это нравится.

{
    orange: '2',
    apple: '1',
    lemon: '3'
}

Я знаю, что это не стандартный формат JSON, но все еще можно разобрать в словарь Python?Обязательно ли указывать апельсин, яблоко, лимон ?

Спасибо вам

1 Ответ

14 голосов
/ 04 сентября 2011

Это действительно YAML (расширенный набор JSON). Используйте PyYAML для его анализа:

>>> s = '''
... {
...     orange: '2',
...     apple: '1',
...     lemon: '3'
... }'''
>>> import yaml
>>> yaml.load(s)
{'orange': '2', 'lemon': '3', 'apple': '1'}

Более того, поскольку внутри строки s есть символ табуляции, мы лучше удалим его перед анализом в yaml.

s=s.replace('\t','')

В противном случае приведенная выше строка не может быть проанализирована.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...