検索

ホームページ  >  に質問  >  本文

python基本数据类型大小比较

偶然间发现这个1个有意思的问题,比如我让列表与数字进行比较,可以发现恒为真。

>>> []>10**100
True

另外,如果用python的其他基本数据类型进行比较可以得到这样的结果。

>>> []>{}
True
>>> []>set()
False
>>> set()>'1'
False
>>> 1>1.0
False
>>> 1>=1.0
True
>>> '1'>1.0
True
>>> set()>1.0
True
>>> [1]>[2]
False
>>> [1]>[0]
True

按照这种比较可以发现整数是最小的。为什么会出现列表比数字大这样的情况呢?

PHP中文网PHP中文网2814日前608

全員に返信(1)返信します

  • 天蓬老师

    天蓬老师2017-04-17 18:01:42

    https://docs.python.org/2/library/stdtypes.html#comparisons

    CPython 実装の詳細: 数値を除く異なる型のオブジェクトは型名で並べられ、適切な比較をサポートしない同じ型のオブジェクトはアドレスで並べられます。

    名前でソートされたさまざまなタイプ

    リスト list
    整数 int

    それは明らかです

    返事
    0
  • キャンセル返事