专业做医院网站,网站建设费账务处理,中国智慧城市建设门户网站,wordpress注册老是显示404结果展示 
优化后 优化前 背景需求#xff1a; 生成列表 
单独抽取显示题目排序方法 存在问题: 
我希望 00 01 02……这样排序#xff0c;但是实际上#xff0c;除了第一个加数会从小到大排序#xff0c;第二个被加数的第十位数和个位数都会从小到大排序#xff0c;也就是…结果展示 
优化后 优化前 背景需求 生成列表 
单独抽取显示题目排序方法 存在问题: 
我希望 00 01 02……这样排序但是实际上除了第一个加数会从小到大排序第二个被加数的第十位数和个位数都会从小到大排序也就是00后面先出现的是010不是01等10-19排完了在轮到01随后020出现接着才是02、03 
也就是说01 、010这两个数字默认是两位数字010先出现第二个数字双位数都走完了才会轮到01这种单个数。 需求 
如何让00 01 ……09 010 011 020然后在是10……119这样排序。 
样式00-2010-19……180-2190-1200 解决思路 
一、把数字改成两位数 按需要的顺序排列写入数组 二、对数组内的题目四种可能性进行去“0”处理 
1、个位数去0个位数去023 
2、个位数去0十位数315 
3、十位数个位数去0121 
4、十位数十位数1010 按照原数组的位置排序 代码展示 0-20所有加法从小到大排序0102而不是01,010
作者阿夏
时间2023年11月26日 12:00
# 5以内“”题共21题
P[]
for a in range(0,21):     # 起始数字就是10就是排除掉0-10之间的数字for b in range(0,21):      # 起始数字为0if 0ab21:         # print({}{}.format(a,b))P.append({}{}.format(%02d%a,%02d%b))if 0ba21:       # print({}{}.format(a,b))P.append({}{}.format(%02d%b,%02d%a))else:passP list(set(P))    # 排除重复但随机打乱
P.sort()    # 小到大排序
print(P)
# for i in P :
#     print(i)# [00, 01, 02, 03, 04, 05, 10, 11, 12, 13, 14, 20, 21, 22, 23, 30, 31, 32, 40, 41, 50]# “”题生成都是按小到大排列的不需要sort排序
print(0-20之间的加法题共有  {}  题.format(len(P)) )   # 21P2[]
for i in P:    # 每个内容是0000一共6个字符# print(i)if i[0]0and i[-3]0:print(i[1:3]i[4:])        # 全部是XX 个位数个位数P2.append(i[1:3]i[4:])if i[0]0and i[-3]!0:print(i[1:])      # 全部是XXX 个位数十位数P2.append(i[1:])if i[0]!0and i[-3]0:print(i[0:3]i[4:])   # 全部是XXX 十位数个位数P2.append(i[0:3]i[4:])if i[0]!0and i[-3]!0:print(i[0:])   # 全部是XXXX 十位数十位数 只有一个1010P2.append(i[0:])
print(P2)
print(0-20之间的加法题正序排序共有  {}  题.format(len(P2)) )   # 21for e in P2:print(e)存在问题 
如果是三位数的加减法存在更多的if可能性多次去0写起来太麻烦了还是想想更好的代码写法让题目排序