# 题目描述 # 磁盘的容量单位常用的有M、G、T # 他们之间的换算关系为1T =1024G,1G=1024M # 现在给定n块磁盘的容量,请对他们按从小到大的顺序进行稳定排序 # 例如给定5块盘的容量 # 5 # 1T # 20M # 3G # 10G6T # 3M12G9M # 排序后的结果为 # 20M # 3G # 3M12G9M # 1T # 10G6T # 注意单位可以重复出现 # 上述3M12G9M表示的容量即为3M12G9M和12M12G相等 # # 输入描述 # 输入第一行包含一个整数n,2 <= n<= 100,表示磁盘的个数。 # 接下来的n行,每行一个字符串,2 < 长度 < 30,表示磁盘的容量, # 由一个或多个格式为MV的子串组成,其中M表示容量大小,V表示容量单位, # 例如20M、1T。 # 磁盘容量的范围1 ~ 1024的正整数,单位M、G、T。 # # 输出描述 # 输出n行 # 表示n块磁盘容量排序后的结果 import re def parse_disk_list(disk_size_list): result_list = [] for disk in disk_size_list: result = parse_string(disk) result_list.append([disk, result]) result_list_sorte