Python排序:子字符串

2024-09-30 08:18:34 发布

您现在位置:Python中文网/ 问答频道 /正文

在Python中

s= "ABCC"
n = len(s)
sorted(set([s[a:b] for a in range(n) for b in range(a+1,n+2)])

给我,没有重复的按字母顺序排序的子字符串

^{pr2}$

如何进一步按子串的长度排序呢。在

['A', 'B', 'C', 'AB', 'BC', 'CC', 'ABC', 'BCC', 'ABCC']

Tags: 字符串inforlenab排序顺序字母
2条回答

简单

sorted(set(s[a:b] for a in range(n) for b in range(a+1,n+1)),
       key=lambda x:(len(x),x))

这将创建一个关键点,通过该键进行比较。首先,它比较字符串长度以确定顺序。如果字符串的长度相同,则领带断路器是字符串内容。

这是您的解决方案:

s= "ABCC"
n = len(s)
sorted(sorted(set([s[a:b] for a in range(n) for b in range(a+1,n+2)])),key=len)

相关问题 更多 >

    热门问题