Python中按字典顺序最小的字符串是什么?

时间:2019-04-23 10:07:31

标签: python

Python中按字典顺序最小的字符串是什么?换句话说,什么是字符串x,以使x < y始终为True(其中y是字符串)?

例如,在C ++中,空字符串是最小的字符串(请参见Smallest lexicographical value of a string)。谁能确认同样的答案适用于Python?

这是我到目前为止尝试过的:

import string

for x in list(string.printable):
    assert("" < x)

2 个答案:

答案 0 :(得分:2)

使用x作为空字符串,任何字符串x < y的{​​{1}}在Python中都保存着y

我们可以确认这一点:

True
如果iterable的所有元素均为true(或者iterable为空),则

all()返回>>> all('' < x for x in string.printable) True 。空字符串与所有可打印的字符串的小于(True)操作就是<

对于不可打印的字符也是如此。 总范围从0到1,1141,111(以16为底的0x10FFFF)变化(感谢@AlexHall的评论)。

True

答案 1 :(得分:1)

""是您可以获得的最小字符串,因为其长度为0(这也是str()返回的字符串)

但是,我没有在文档中找到任何内容来明确确认...

  

https://docs.python.org/3.7/library/stdtypes.html#comparisons
  https://docs.python.org/3.7/reference/datamodel.html#object.__lt__