Python程序:按自定义顺序排序字符串
假设我们有一个字母数字混合的字符串s,我们必须根据以下条件对它进行排序
- 所有已排序的小写字母将排在大写字母之前。
-
所有已排序的大写字母将排在数字之前。
-
所有已排序的奇数数字将排在已排序的偶数数字之前。
因此,如果输入为s =“HeLlo1234”,则输出将为eloHL1324
为了解决这个问题,我们将按以下步骤进行−
- 定义一个函数f()。这将采用c
- code:= 0
- 如果c是大写字母,则
- code:= 10 ^ 3
- 否则,当c是数字时,那么
- code:= 10 ^ 6
- 如果c的ASCII是偶数,则
- code:= 10 ^ 9
- 返回代码+ c的ASCII值
- 在主方法中执行以下操作
- l:=已排序的s列表,并通过调用f()函数对s中的每个字符c进行排序
- 连接l中的每个字符并返回
示例
让我们看看以下实现以便更好地理解