Python字典用法进阶——统计电影信息

统计分析电影信息

统计过程分解为多个步骤,要求实现如下两个函数:

1) 函数construct_movies_by_director(data_list)
  1. 参数data_list是一个每个元素形如"(年份,电影名,票房,导演)"元组的列表,见代码中的data_list对象。
  2. 函数处理传入的列表对象data_list,得到并返回一个字典。返回的字典,key是导演,value是每项形如"(年份,电影名,票房)"元组的电影信息列表。
  3. 在处理过程中,如果同样的电影信息出现多次,则抛出异常"重复数据"。代码中的data_list列表对象在处理后得到的字典如下:
    {'Ron Howard': [(2013, 'Rush', 26.9), (2001, 'A Beautiful Mind', 171.0)], 'Steve McQueen': [(2008, 'Hunger', 154.0)]}
2) 函数top_directors(movie_dict)
  1. 参数movie_dict为调用函数construct_movies_by_director返回的结果。
  2. 经处理后返回一个列表,其每个元素是形如"(导演,总票房)"的元组,其中总票房是该导演所有执导电影的票房之和。且返回的列表按总票房从大到小的顺序排序。
  3. 上面的字典,经本函数处理后返回的结果如下:
    [('Ron Howard', 197.9), ('Steve McQueen', 154.0)]
编程实现:
	data_list = [(2013, 'Rush', 26.9, 'Ron Howard'), (2001, 'A Beautiful Mind', 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值