educoder_python:3-3-基础结构第4关:盘点订单

商铺每月会对订单进行盘点,盘点订单号归档,并做出统计。

本关任务:现需要大家根据上述订单编号规则完成以下任务,编写一个程序。

相关知识(略)
编程要求
在右侧编辑器中补充代码,具体要求如下:

测试数据内是该盘点期限内的所有订单列表数据,程序开始会将其读入列表list1中;

由于记录员的失误,有可能会在list1中存在相同的订单编号,要求程序将相同的编号删除并按原始顺序记录将所有不同订单编号列表转成元组并输出。

输出该盘点周期内完成最多的订单的是哪一天。

测试说明
平台会对你编写的代码进行测试,比对你输出的数值与实际正确数值,只有所有数据全部计算正确才能通过测试,程序运行过程如下:

程序开始会将其读入到list1中,list1:[1801020001,1801020002,1801030001,1801020002,1801030002,1801030003,1801040001]。

第一步:大家编写的程序需要在list1中去掉重复元素[180102002]并按顺序转换为元组输出:(1801020001,1801020002,1801030001,1801030002,1801030003,1801040001);

第二步:大家需要按规则查找元组中每个元素,根据日期和订单数量进行比较,得出单日最大订单数量是180103,订单为3个,输出这个数字即可:180103。

测试输入:  

1801020001  
1801020002  
1801030001  
1801020002  
1801030002  
1801030003  
1801040001  
预期输出:  

(1801020001,1801020002,1801030001,1801030002,1801030003,1801040001)  
180103  
#此部分为读入订单测试数据到list1中
list1 = []
while True:
    try:
        order= input()
        list1.append(order)
    except:
        break

##########  Begin  #########
#(1)定义元组,将list1中元素按顺序去掉重复值并保存在元组中,输出整个元组
lb=[]
l=len(list1)
for i in range(0,l):#0-L
    if(list1[i] not in lb):
        lb.append(list1[i])
lb=tuple(lb)
print(lb)

#(2)查找最大当日订单数,并输出年月日:格式如下:180101
maxn=lb[0][6:]#假设最大的订单号是元组中第一个元素的第6位数以后的数字的这几个数
idx=0
l=len(lb)
for i in range(l):
    if lb[i][6:]>maxn:
        maxn=lb[i][6:]
        idx=i#记录哪一个订单数数字最大的
print(lb[idx][:6])#输出最大订单数的前五位数
##########  End  #########

在这里插入图片描述

  • 6
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值