最佳答案
从技术上讲,Python 容器是任何实现 __contains__
方法 ( source ) 的东西。因此,如果我们只考虑内置函数,而不考虑标准库,我们可以通过这一行得到答案:
>>> [i for i in dir(__builtins__) if hasattr(eval(i), '__contains__')]
['_', '__name__', 'bytearray', 'bytes', 'dict', 'frozenset', 'list', 'range', 'set', 'str', 'tuple']
我们要排除 _
和 __name__
所以完整的列表是:
bytearray
、bytes
、dict
、frozenset
、list
、range
、set
、str
和 tuple
或者,
>>> [k for k, v in vars(__builtins__).items() if hasattr(v, '__contains__')]
['__name__', '__doc__', '__package__', 'bytearray', 'bytes', 'dict', 'frozenset', 'list', 'range', 'set', 'str', 'tuple', '_']
并且删除 __name__
、__doc__
、__package__
和 _
将得到相同的结果。
关于python - 除了 dict、list、set 和 tuple 之外,还有其他内置容器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58721442/