类型:集合
描述
文件中包含有2018和2019手机销售榜单数据(市场份额百分数),请根据要求升序输出分析结果:
- 输入’1’时,以列表形式在两行中分别输出2019年和2018年上榜品牌
- 输入’2’时,以列表形式输出2019年和2018年都上榜的品牌
- 输入’3’时,以列表形式输出2019年和2018年上榜的所有品牌
- 输入’4’时,以列表形式输出2019年新上榜品牌
- 输入’5’时,以列表形式输出2019年新上榜和落榜品牌
示例
输入:5
文章来源:https://www.toymoban.com/news/detail-762759.html
输出:[‘中兴’, ‘联想’, ‘金立’]文章来源地址https://www.toymoban.com/news/detail-762759.html
参考答案
with open('sale2019.csv','r',encoding='utf-8') as data2019:
sale2019 = [[line.strip().split(',')[0],float(line.strip().split(',')[1])] for line in data2019]
with open('sale2018.csv','r',encoding='utf-8') as data2018:
sale2018 = [[line.strip().split(',')[0],float(line.strip().split(',')[1])] for line in data2018]
saleSet2019 = { x[0] for x in sale2019 }
saleSet2018 = { x[0] for x in sale2018 }
n = input()
if n == '1':
# 1.输入'1'时,以集合形式在两行中分别输出2019年和2018年上榜品牌
print(sorted(saleSet2019))
print(sorted(saleSet2018))
elif n == '2':
# 1.输入'2'时,以集合形式输出2019年和2018年都上榜的品牌
# 两年都上榜的品牌,交集 s & t
s2018and2019 = saleSet2019 & saleSet2018
print(sorted(s2018and2019))
elif n == '3':
# 1.输入'3'时,以集合形式输出2019年和2018年上榜的所有品牌
# 两年上榜的所有品牌,并集 s | t
s20182019all = saleSet2019 | saleSet2018
print(sorted(s20182019all))
elif n == '4':
# 1.输入'4'时,以集合形式输出2019年新上榜品牌
# 新上榜品牌,差补 s - t
s2019new = saleSet2019 - saleSet2018
print(sorted(s2019new)) # {'联想', '中兴'}
elif n == '5':
# 1.输入'5'时,以集合形式输出2019年新上榜和落榜品牌
# 新上榜与落榜品牌,对称差分, s ^ t
newAndold = saleSet2019 ^ saleSet2018
print(sorted(newAndold)) # {'中兴', '联想', '金立'}
到了这里,关于python——手机销售统计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!