仅在Python字典中加入值

我有一本字典。我只想加入价值观。这是字典: -仅在Python字典中加入值

d = {'x': 1, 'y': 2, 'z': 3} 

我的预期输出为123(应该是123,没有任何排序)

代码我使用: -

d = {'x': 1, 'y': 2, 'z': 3} 

test = ' '.join(d.values())

print test

它显示的错误: -

Traceback (most recent call last): 

File "test.py", line 2, in <module>

test = ' '.join(d.values())

TypeError: sequence item 0: expected string, int found

我使用Python 2.x的

回答:

你的价值观是不是字符串:

d = {'x': 1, 'y': 2, 'z': 3} 

test = ''.join(str(x) for x in d.values())

由于@MosesKoledoye指出:按键的顺序是没有保证的,所以你可能需要做一些事情更复杂,如果字符串是很重要的。对整数值做一个str()在任何情况下都是至关重要的。

''.join(str(d[x]) for x in sorted(d)) 

上面将根据键的排序顺序对值进行排序,按值排序是很简单的。

您输出的数字之间没有空格,所以请确保您加入''不在
' '

回答:

您需要的值映射在与字符串函数:

d = {'x': 1, 'y': 2, 'z': 3} 

test = ' '.join(map(str, d.values()))

注意,在排序的格式这个解决方案将不会返回值,即数字将不会按升序排列。但是,如果您需要分类解决方案:

test = ' '.join(map(str, sorted(d.values()))) 

以上是 仅在Python字典中加入值 的全部内容, 来源链接: utcz.com/qa/258358.html

回到顶部