擅长:python、mysql、java
<p>在不知道韩国语字符的字母顺序的情况下,下面是我的尝试(基于@kindall的开始)。注意,可以将自定义函数传递到sorter的<code>key</code>参数中</p>
<pre><code>def sorter(char):
#Place english characters after Korean
if ord(char[0])>122:
return ord(char[0])-12000
else:
return ord(char[0])+12000
lst=['Z', 'C', 'A B', 'noname3', 'ㄴ', 'ㄱ', 'D A', 'A A' , 'ㄷ']
sorted(lst, key=lambda x: (x.startswith('noname'),sorter(x)))
['ㄱ', 'ㄴ', 'ㄷ', 'A B', 'A A', 'C', 'D A', 'Z', 'noname3']
</code></pre>