Преобразование одного значения словаря в список? - PullRequest
1 голос
/ 02 марта 2012

Давайте возьмем словарь

r = {u'a ':' john ', u'b': 'ABA Design House, Фонд «Развивающиеся умы», Food Network Южный пляжный фестиваль вина и еды', u 'c ':' give '}

Я хочу преобразовать его в:

r = {u'a': 'john', u'b ': [' ABA DesignХаус »,« Фонд развивающихся умов »,« Food Network Южно-пляжный фестиваль вина и еды »] , u'c ':' give '}

Ответы [ 2 ]

5 голосов
/ 02 марта 2012

Используйте встроенный метод split ()

>>> r[u'b'] = r[u'b'].split(',')
>>> r
    {u'a': 'john', u'c': 'give', u'b': ['ABA Design House ', ' Developing Minds Foundation ', ' Food Network South Beach Wine & Food Festival']}

Если вам неудобно использовать пробелы в начале / конце, используйте метод strip () после разделения

>>> r[u'b']=[x.strip() for x in r[u'b'].split(',')]
>>> r
{u'a': 'john', u'c': 'give', u'b': ['ABA Design House', 'Developing Minds Foundation', 'Food Network South Beach Wine & Food Festival']}
2 голосов
/ 02 марта 2012

Предполагая, что вы хотите сделать это для каждого значения в словаре через запятую:

for k, v in r.items():
    if "," in v:
        r[k] = [item.strip() for item in v.split(",")]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...