Python打包函数zip——整理电影票房(学习笔记)

1、zip函数

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。

如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同。

2、案例演示

关于电影票房的数据我是在艺恩-数据智能服务商-年度票房中找的,给大家一个参考链接艺恩-数据智能服务商-年度票房
在这里插入图片描述

str='''
1	
穿过寒冬拥抱你

剧情	61,181	42	9	中国	2021-12-31
2	
反贪风暴5:最终章

动作	44,303	41	8	中国/中国香港	2021-12-31
3	
李茂扮太子

喜剧	42,439	39	8	中国	2022-01-01
4	

误杀2

剧情	22,984	39	8	中国	2021-12-17
5	

以年为单位的恋爱

剧情	13,979	38	6	中国	2021-12-31
6	
爱情神话

爱情	13,179	45	9	中国	2021-12-24
7	
黑客帝国:矩阵重启

动作	7,479	38	3	美国	2022-01-14
8	
雄狮少年

动画	7,441	40	8	中国	2021-12-17
9	
魔法满屋

动画	6,095	38	6	美国	2022-01-07
10	

汪汪队立大功大电影

动画	5,068	32	5	美国	2022-01-14
'''

我选了10个数据,经过自己稍作整理:

filmnames=['穿过寒冬拥抱你','反贪风暴5:最终章','李茂扮太子','误杀2','以年为单位的恋爱','爱情神话','黑客帝国:矩阵重启','雄狮少年','魔法满屋','汪汪队立大功大电影']
filmareas=['中国','中国/中国香港','中国/中国台湾','中国','中国/中国澳门','中国台湾','英国','澳大利亚','美国','美国']
filmboos=['61,181','44,303','42,439','22,984','13,979','13,179','7,479','7,441','6,095','5,068']
filmtypes=['剧情','动作','喜剧','剧情','剧情','爱情','动作','动画','动画','动画']

先写一个循环看看:

for filmname in filmnames:
    print(filmname)

在这里插入图片描述

for filmboo in filmboos:
    print(filmboo)

在这里插入图片描述

for filmarea in filmareas:
    print(filmarea)

在这里插入图片描述

使用循环,创建变量irank加上序号:

irank=1
for filmname in filmnames:
    print(irank,filmname)
    irank+=1

在这里插入图片描述

使用打包函数zip:

for index,filmname,filmarea,filmtype,filmboo in zip(range(10),filmnames,filmareas,filmtypes,filmboos):
    print(index+1,filmname,filmarea,filmtype,'   当前电影票房:',filmboo)

在这里插入图片描述

变化一下格式,使之更加美观:

for index,filmname,filmarea,filmtype,filmboo in zip(range(10),filmnames,filmareas,filmtypes,filmboos):
    print(f"{index+1}. 《{filmname}》上映地区:{filmarea},电影类型:{filmtype},当前电影票房:{filmboo}" )

在这里插入图片描述
还可以将zip()函数与np结合输出:

import numpy as np
for irank,filmname,filmarea,filmtype,filmboo in zip(np.arange(1,len(filmnames)+1),filmnames,filmareas,filmtypes,filmboos):
    print(f"{irank}. 《{filmname}》上映地区:{filmarea},电影类型:{filmtype},当前电影票房:{filmboo}" )

注意:这里是len(filmnames)+1,即要加1,因为:
np.arange(1,len(filmnames))得到的结果只有9,因此10部电影要+1
只有9,因此10部电影要+1

除了zip()函数之外,还可以使用枚举函数 enumerate()

  1. enumerate()不仅可以将对应的可迭代对象进行提取,并且将对应的索引进行提取
  2. 使用enumerate的前提是电影票房,上映地区等等都要一一对应
for idex,filmname in enumerate(filmnames):  #枚举函数的作用
    print(idex+1,filmname)

在这里插入图片描述

for index,filmname in enumerate(filmnames):
    print(f"{index+1}. 《{filmname}》上映地区:{filmareas[index]},电影类型:{filmtypes[index]},当前电影票房:{filmboos[index]}" )

在这里插入图片描述

  • 7
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

温欣2030

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值