代码之家  ›  专栏  ›  技术社区  ›  NPE

构造大于任何字符串的对象

  •  0
  • NPE  · 技术社区  · 5 年前

    在Python 3中,我有一个字符串列表,如果能够附加一个sentinel来比较列表中的所有元素,我会发现这很有用。

    我可以定义一个类,可能是子类 str ,但感觉应该有一个更简单的方法。

    1 回复  |  直到 5 年前
        1
  •  0
  •   Carcigenicate    5 年前

    这是一种中庸的回答,但是当你处理数字并且需要一个哨兵值来进行比较时,使用特定数字类型可以容纳的最大(或最小)数字并不少见。

    # 1114111 is the highest value that chr seems to accept
    MAX_CHAR = chr(1114111)
    
    # One million is entirely arbitary here.
    # It should ideally be 1 + the length of the longest possible string that you'll compare against 
    MAX_STRING = MAX_CHAR * int(1e6)
    

    除非有我不知道的奇怪的角落案件, MAX_STRING 现在应该被认为比任何其他字符串(除了它本身)都大;前提是它足够长。