假设我们有一个作者列表,每个作者都有一个姓名和一些作品。我们想要按照作者进行分组,并将作者列表格式化输出。
我们可以使用字典来实现这个功能,其中字典的键是作者的姓名,字典的值是包含该作者作品的列表。然后,我们遍历作者列表,将每个作者的作品添加到对应的列表中。
以下是一个示例代码:
authors = [
{'name': '作者1', '作品': ['作品1', '作品2']},
{'name': '作者2', '作品': ['作品3']},
{'name': '作者1', '作品': ['作品4']}
]
formatted_authors = {}
for author in authors:
name = author['name']
work = author['作品']
if name in formatted_authors:
formatted_authors[name].extend(work)
else:
formatted_authors[name] = work
for name, works in formatted_authors.items():
print(f'{name}: {", ".join(works)}')
该代码首先定义了一个作者列表 authors
,其中包含了三个作者的信息(姓名和作品)。然后,我们创建一个空的字典 formatted_authors
。
接下来,我们通过遍历作者列表,对每个作者进行处理。我们从每个作者中获取姓名和作品,并检查该作者是否已经在 formatted_authors
字典中。如果已经存在,则将当前作品列表添加到对应的作者作品列表中;否则,创建一个新的键值对,将当前作品列表作为值添加到字典中。
最后,我们再次遍历 formatted_authors
字典,将作者的姓名和作品列表格式化输出。
输出结果将是按照作者分组的格式化作者列表,每个作者的作品将用逗号分隔。例如:
作者1: 作品1, 作品2, 作品4
作者2: 作品3
请注意,这只是一个示例,实际应用中的数据结构和逻辑可能会有所不同,但这个示例提供了一个基本的解决方案。