How are strings compared?(字符串是如何比较的?)
本文介绍了字符串是如何比较的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想知道Python如何进行字符串比较,更具体地说,当使用小于<
或大于>
运算符时,它如何确定结果。
例如,如果我将print('abc' < 'bac')
放入True
,则得到True
。我知道它比较字符串中的相应字符,但不清楚为什么会有更多字符,因为没有更好的术语,";weight";放在第一个字符串中的a
小于b
(第一个位置),而不是第二个字符串(第二个位置)中的a
小于b
。
推荐答案
来自docs:
比较使用词典编纂 订购:先订购前两件商品 是比较的,如果它们不同的话 确定 比较;如果它们相等,则 接下来的两个项目进行比较,因此 打开,直到任一序列 筋疲力尽。
同时:
字符串的字典序排序使用Unicode码位编号对单个字符进行排序。
或在Python 2上:
字符串的词典编排顺序对单个字符使用ASCII排序。
举例:
>>> 'abc' > 'bac' False >>> ord('a'), ord('b') (97, 98)
发现
a
小于b
,立即返回结果False
。不比较其他项目(如您看到的第二个项目:b
>a
isTrue
)。注意大小写:
>>> [(x, ord(x)) for x in abc] [('a', 97), ('b', 98), ('c', 99), ('d', 100), ('e', 101), ('f', 102), ('g', 103), ('h', 104), ('i', 105), ('j', 106), ('k', 107), ('l', 108), ('m', 109), ('n', 110), ('o', 111), ('p', 112), ('q', 113), ('r', 114), ('s', 115), ('t', 116), ('u', 117), ('v', 118), ('w', 119), ('x', 120), ('y', 121), ('z', 122)] >>> [(x, ord(x)) for x in abc.upper()] [('A', 65), ('B', 66), ('C', 67), ('D', 68), ('E', 69), ('F', 70), ('G', 71), ('H', 72), ('I', 73), ('J', 74), ('K', 75), ('L', 76), ('M', 77), ('N', 78), ('O', 79), ('P', 80), ('Q', 81), ('R', 82), ('S', 83), ('T', 84), ('U', 85), ('V', 86), ('W', 87), ('X', 88), ('Y', 89), ('Z', 90)]
这篇关于字符串是如何比较的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:字符串是如何比较的?
基础教程推荐
猜你喜欢
- 哪些 Python 包提供独立的事件系统? 2022-01-01
- 使用Python匹配Stata加权xtil命令的确定方法? 2022-01-01
- 使用 Google App Engine (Python) 将文件上传到 Google Cloud Storage 2022-01-01
- 合并具有多索引的两个数据帧 2022-01-01
- Python 的 List 是如何实现的? 2022-01-01
- 将 YAML 文件转换为 python dict 2022-01-01
- 使 Python 脚本在 Windows 上运行而不指定“.py";延期 2022-01-01
- 如何在Python中绘制多元函数? 2022-01-01
- 症状类型错误:无法确定关系的真值 2022-01-01
- 如何在 Python 中检测文件是否为二进制(非文本)文 2022-01-01