我需要通过值到键将 Dictionray 写入文件。意思是,如果我有例如电影字典(=键)和播放那部电影的演员,我需要将一个演员写入文件,然后编写他出演的所有电影。键是电影,值是演员集。我设法写电影和价值观,但正如所解释的那样,这不是我想要的。该文件应该是这样的:演员姓名、电影 1、电影 2 等...
2 回答
凤凰求蛊
TA贡献1825条经验 获得超4个赞
最直接的做法是反转字典。
actor2movies = {}
for movie, actors in movie2actors.items():
for actor in actors:
if actor not in actor2movies:
actor2movies[actor] = []
actor2movies[actor].append(movie)
(如果改为初始化actor2movies为collections.defaultdict(list),则可以省略该if语句。)
然后写出结果字典,一次一个键及其值。
with open("foo.txt", "w") as f:
for actor, movies in actor2movies.items():
print("{},{}".format(actor, ",".join(movies))
添加回答
举报
0/150
提交
取消