为什么Python允许这些比较?

为什么Python允许这些比较?,python,string,syntax,compare,python-3.4,Python,String,Syntax,Compare,Python 3.4,我正在使用Python3.4,想知道Python为什么允许这些代码 >>> "a">"b" False >>> "a"<"b" True >>> 我明白了,这与ASCII无关,所以Python为什么允许这样做?在朋友列表中排序姓名,排序搜索结果,搜索最佳匹配。 比较字符串是最需要的操作之一。在好友列表中排序姓名,排序搜索结果,搜索最佳匹配项。 比较字符串是最需要的操作之一。在好友列表中排序姓名,排序搜索结果,搜索最佳匹配项。

我正在使用Python3.4,想知道Python为什么允许这些代码

>>> "a">"b"
False
>>> "a"<"b"
True
>>> 

我明白了,这与ASCII无关,所以Python为什么允许这样做?

在朋友列表中排序姓名,排序搜索结果,搜索最佳匹配。
比较字符串是最需要的操作之一。

在好友列表中排序姓名,排序搜索结果,搜索最佳匹配项。
比较字符串是最需要的操作之一。

在好友列表中排序姓名,排序搜索结果,搜索最佳匹配项。
比较字符串是最需要的操作之一。

在好友列表中排序姓名,排序搜索结果,搜索最佳匹配项。 比较字符串是最需要的操作之一。

标准比较(,=,!=)适用于字符串。这些比较使用ASCII或Unicode的标准逐字符比较规则

编辑:

请参阅另一篇堆栈溢出文章,并查找ord()函数

编辑!!ord()在这里不起作用,因为“ç”不是单字节字符

标准比较(,=,!=)适用于字符串。这些比较使用ASCII或Unicode的标准逐字符比较规则

编辑:

请参阅另一篇堆栈溢出文章,并查找ord()函数

编辑!!ord()在这里不起作用,因为“ç”不是单字节字符

标准比较(,=,!=)适用于字符串。这些比较使用ASCII或Unicode的标准逐字符比较规则

编辑:

请参阅另一篇堆栈溢出文章,并查找ord()函数

编辑!!ord()在这里不起作用,因为“ç”不是单字节字符

标准比较(,=,!=)适用于字符串。这些比较使用ASCII或Unicode的标准逐字符比较规则

编辑:

请参阅另一篇堆栈溢出文章,并查找ord()函数


编辑!!ord()在这里不起作用,因为“ç”不是单字节字符

为什么不允许它呢?Python 3允许您比较相同类型的对象。这两个都是unicode字符串为什么不允许呢?Python 3允许您比较相同类型的对象。这两个都是unicode字符串为什么不允许呢?Python 3允许您比较相同类型的对象。这两个都是unicode字符串为什么不允许呢?Python 3允许您比较相同类型的对象。这两个都是unicodestrings@PadraicCunningham是的,我认为这是正确的answer@importV,逐个角色的评估仍然成立,任何像“ç”这样的角色都是有意义的应该大于可以存储在单个bytePadraic中的任何字符,如ascii字符-我应该在之前自己测试过-您在ord()中的正确性不起作用。@PadraicCunningham True,我认为这是正确的answer@importV,逐字评估仍然成立,可以理解的是,任何像“ç”这样的字符都应该大于任何像ascii字符这样可以存储在一个bytePadraic中的字符——我应该自己测试一下——您在ord()中是正确的,不起作用。@PadraicCunningham True,我认为这是正确的answer@importV,逐个字符的评估仍然成立,任何像“ç”这样的字符都应该大于任何像ascii字符这样可以存储在一个bytePadraic中的字符,这是有道理的-我应该亲自测试一下-您在ord()中是正确的,不工作。@Padraickenningham true,我认为这是正确的answer@importV,逐字符评估仍然成立,任何像“ç”这样的字符都应该大于任何像ascii这样的字符,它们可以存储在一个bytePadraic中,这是有道理的-我应该亲自测试一下-您在ord()中是正确的,不工作。
>>> "ç">"a"
True
>>>