Python程序以自定义顺序对字符串进行排序
假设我们有一个字母数字字符串s。我们必须根据以下条件对其进行排序
所有排序的小写字母都将放在大写字母之前。
所有排序的大写字母都将放在数字之前。
所有已排序的奇数位将置于已排序的偶数位之前。
因此,如果输入类似于s="HeLlo1234",那么输出将是eloHL1324
示例
让我们看下面的实现来更好地理解
def f(c):
code = 0
if c.isupper():
code = 10 ** 3
elif c.isdigit():
code = 10 ** 6
if ord(c) % 2 == 0:
code = 10 ** 9
return code + ord(c)
def solve(s):
l = sorted(s, key=lambda c: f(c))
return ''.join(l)
s = "HeLlo1234"
print(solve(s))输入
"HeLlo1234"输出结果
eloHL1324
热门推荐
10 新年门口花束祝福语简短
11 盘锦结婚祝福语大全简短
12 父母生日祝福语 简短独特
13 家庭恩爱祝福语简短英文
14 高考俄语祝福语大全简短
15 虎年祝福语 诗句唯美简短
16 生日婚礼祝福语简短精辟
17 虎年喝酒拜年祝福语简短
18 教师闺蜜祝福语简短