为了账号安全,请及时绑定邮箱和手机立即绑定

字典按值写入文件

字典按值写入文件

繁花不似锦 2021-10-05 15:53:09
我需要通过值到键将 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))


查看完整回答
反对 回复 2021-10-05
?
UYOU

TA贡献1878条经验 获得超4个赞

将键设置为演员。您可以创建另一个字典,它将当前字典的值作为键和键作为值。


查看完整回答
反对 回复 2021-10-05
  • 2 回答
  • 0 关注
  • 170 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信