Iteritems返回格式化的字符串

时间:2013-07-05 18:26:53

标签: python python-2.7

我对Python非常苛刻,所以我希望这是一个简单的问题。我正在尝试遍历字典并为它们返回格式化的字符串。我可以打印出格式化的字符串没问题,但我正在尝试将它变成一个函数,以便我可以运行测试。

离。

somedict = {'dog':'bone', 'cat':'nip'}

def Something(somedict):
    for key, value in somedict.iteritems():
        my_str = '%s and %s.' % (key, value)
        return my_str

这会返回'dog and bone',但我想说'dog and bone.cat and nip'

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:4)

您只返回第一个项。加入结果:

def Something(somedict):
    return '.'.join(['%s and %s' % (key, value) for key, value in somedict.iteritems()])

这会将所有键值对与换行符连接起来,但您可以选择任何您喜欢的连接字符串,包括空字符串。

演示:

>>> Something(somedict)
'dog and bone.cat and nip.'

考虑到字典没有固定的顺序,根据字典的插入和删除历史记录,输出顺序可能不同。