我对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'
任何帮助将不胜感激
答案 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.'
考虑到字典没有固定的顺序,根据字典的插入和删除历史记录,输出顺序可能不同。