Предположим, у меня есть словарь. Как мне раздеть все ключи? Изменить: это вложенный словарь - PullRequest
0 голосов
/ 29 марта 2010

И есть большой блок значений с пробелом между ними?

Редактировать: Что, если у меня есть вложенные словари? Текущие решения работают, если все мои значения являются строками. Но что, если мои значения - это вложенные словари?

Ответы [ 3 ]

2 голосов
/ 29 марта 2010

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

>>> d = { 1 : 'foo', 2 : 'bar' }
>>> ' '.join(d.values())
'foo bar'

Если нет, вы можете попытаться преобразовать их в строки, используя, например, str:

>>> d = { 1 : 2, 3: 4 }
>>> ' '.join(str(v) for v in d.values())
'2 4'
1 голос
/ 29 марта 2010
>>> a = {1: 'hello', 2: 'world'}
>>> a.values()
['hello', 'world']
>>> ' '.join(a.values())
'hello world'
0 голосов
/ 29 марта 2010

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

In [1]: from itertools import chain
In [2]: d = {'A': {1: 'pants', 2: 'trowsers'}, 'B': {'1': 'spam', '2': 'eggs'}} 
In [3]: values = ' '.join(chain.from_iterable(dic.itervalues() for dic in d.itervalues()))
In [4]: values
Out[4]: 'pants trowsers spam eggs'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...