Python将元素的子集连接成字符串的方法?

时间:2014-03-11 17:56:46

标签: python python-3.x

我有这个代码......它有效,但还有更好的方法吗?

因此,如果参与者列表为[ { 'Id': 5, 'name':'bob'}, {'Id': 4, 'name': 'sally'} ],则结果应为'5, 4'

participant_list = obj['participants']

id_num = []

for participant in participant_list:
    id_num.append(str(participant['Id']))

result = ",".join(id_num)

3 个答案:

答案 0 :(得分:2)

list comprehensionstr.join

一起使用
>>> participant_list = [ { 'Id': 5, 'name':'bob'}, {'Id': 4, 'name': 'sally'} ]
>>> ", ".join([str(p["Id"]) for p in participant_list])
'5, 4'
>>>

答案 1 :(得分:0)

使用map(),这有效 -

>>> participant = [ { 'Id': 5, 'name':'bob'}, {'Id': 4, 'name': 'sally'} ]
>>> ",".join(map(lambda x: str(x['Id']), participant))
'5,4'

答案 2 :(得分:0)

怎么样:

>>> ','.join([str(i['Id']) for i in participant_list])
'5,4'