将字符串排序为字母顺序Python

时间:2015-03-09 21:40:01

标签: python

基本上我正在做的是建造一个具有属性" _containers"这是一个单独链接的容器对象列表。每个容器都有属性" _destination"这就是它的发展方向。

shipyard._containers列表必须按目的地按字母顺序排列。我知道除了比较两个目的地之外如何完成所有这些。

如何比较两个字符串并根据字母顺序确定哪一个字符串首先出现?我根本不允许使用任何python列表。

2 个答案:

答案 0 :(得分:3)

xy是命名为字符串的Python对象的变量时,

x< ÿ

当且仅当Truex之前按字母顺序排列时,

才为y

这可能与的含义相匹配,也可能不符合“之前按字母顺序排列”。例如,所有大写字符在小写字母之前按字母顺序排列,因此如果x='Zebra'y='aardvark',则x < y将为True。要明确忽略大/小写区别,请使用

x.lower() < y.lower()

更一般地说,Unicode可以呈现几个这样的陷阱,其中按特定顺序的代码点意味着它们必须按该顺序进行比较。对于Unicode排序算法的完全通用方法,您可以查看How do I sort unicode strings alphabetically in Python?中讨论的各种备选方案。

答案 1 :(得分:0)

containers = sorted(containers, key = lambda i: i.desitination)