【问题标题】:Case sensitive string comparison in PythonPython中区分大小写的字符串比较
【发布时间】:2015-08-21 02:04:37
【问题描述】:

以下代码:

if "IAMBIG" > "iambig":
      print("True")
else:
      print("False")

结果:

False

由于 Python 区分大小写,我知道检查相等性会导致上述 if 语句中的 False。但是,我不确定string 比较在检查“大于”(或小于)条件时的工作原理。

谁能解释为什么我在上面的if 声明中得到False

【问题讨论】:

    标签: python python-3.x string-comparison


    【解决方案1】:

    Python 3 将字符串作为 unicode 字符序列进行比较。由于字符I 的unicode 编号是U+0049,而字符i 的unicode 编号是U+0069,因此比较"I..." > "i..." 很自然返回False

    我一般拉丁小写字母的数字大于大写字母,这会使大写字符串在使用比较运算符时比小写“小”。

    作为参考,这里是基本拉丁 unicode 块的链接:http://unicode-table.com/en/blocks/basic-latin/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-27
      • 2021-05-09
      • 2015-07-23
      相关资源
      最近更新 更多