我有一个可以表示整数以及名称的字符串列表。 默认字符串比较执行以下操作:以下列方式对字符串列表进行排序的最简单方法是什么?
sorted(['1','2','3','4','10','102','14','Alice','John','Sally'])
['1', '10', '102', '14', '2', '3', '4', 'Alice', 'John', 'Sally']
我想如下对列表进行排序:
['1', '2', '3', '4', '10', '14', '102', 'Alice', 'John', 'Sally']
这意味着:
- 排序所有这些数字代表一个整数串
- 按字母顺序排列“真实”字符串,并将此列表附加到(1.)
我尝试过使用比较方法,但我不知道如何确定干净如果字符串表示一个整数没有尝试/除外?
在此先感谢
谢谢,正是我需要的! (在我的情况下没有负数的发生) – any1
请注意:(1)依赖于CPtyhon的实现细节(ints比较字符串之前而不是之后); (2)不适用于Python 3,因为不允许将字符串与字符串进行比较。 – NPE
好点,增加了另一个版本。 – kindall