我正在使用Python 3.4,想知道为什么Python允许这些代码;
>>> "a">"b"
False
>>> "a"<"b"
True
>>>
我认为这可能是关于他们在ASCII中的顺序,但如果有人解释为什么Python允许这样的话,我会恭维。奇怪的是,如果是在Python 2x中,我可以理解,但是,它是Python 3x。不应该Python抛出一个SyntaxError吗?
编辑:我尝试过非Ascii字符;
>>> "ç">"a"
True
>>>
它不是关于ASCII然后我理解,那么为什么Python允许这个呢?
答案 0 :(得分:3)
Here's a link that describes your question
标准比较(&lt;,&lt; =,&gt;,&gt; =,==,!=)适用于字符串。这些比较使用ASCII或Unicode的标准逐字符比较规则。
编辑:
查看此其他堆栈溢出帖子并查找ord()函数
String Comparison Technique Used by Python
编辑!! ord()在这里不起作用,因为'ç'不是单字节字符
答案 1 :(得分:0)
对朋友列表中的姓名进行排序,对搜索结果进行排序,搜索最佳匹配。 比较字符串是最需要的操作之一。