NOC大赛创客智慧编程赛项Python复赛模拟题:模拟扑克牌先按同名牌和大小排序。
在进行扑克游戏时,有人习惯于将抓到的扑克牌先按同名牌的数量排序,再按牌的大小排序。请编写程序,模拟这种排序方法:
要求:
(1)接收用户输入的若干整数(1到13之间,每个数字用逗号隔开,相同数字最多出现4个);
(2)通过函数将这些整数排序,先按相同整数的数目由多到少排序,相同数目的整数 再按从大到小排序,将排好序的数字放入一个元组中,并将元组打印到屏幕上。
提示:
(1)接收用户输入的用逗号隔开的整数,将其转换成方便处理的列表或元组; (2)利用函数将不同数目的整数分隔开,放入不同的列表中(card 函数可以实现); (3)针对不同的列表进行排序操作(在 card 函数基础上继续编写代码); (4)将排好序的列表中的项目依次组合,并转换成一个元组打印到屏幕上。 注:input()函数中不要增加任何参数等提示信息。
例:输入:1,5,6,1,9,2,1,4,1,6,3,3
输出:(1, 1, 1, 1, 6, 6, 3, 3, 9, 5, 4, 2)