擅长:python、mysql、java
<p>Edit:我总是忘记这个注释,但它确实很重要,不要用“list,dict”等名称调用变量,这些名称对python有特殊的意义</p>
<p>编辑:按“b”的数量排序</p>
<p>您可以对列表进行排序:</p>
<pre><code>import functools
lst = ['AAAAAABB', 'AAAAAABA', 'AAAAAAAB', 'AAAAABAA', 'AAAAABAB', 'AAAAABBA']
def sort_by_b(a,b):
ab = a.count('B')
bb = b.count('B')
if (ab == bb and a < b) or ab < bb:
return -1
elif ab > bb:
return 1
else:
return a == b
print(sorted(lst, key=functools.cmp_to_key(sort_by_b)))
</code></pre>
<p>结果是:</p>
<pre><code>['AAAAAAAB', 'AAAAAABA', 'AAAAABAA', 'AAAAAABB', 'AAAAABAB', 'AAAAABBA']
</code></pre>