gpt4 book ai didi

python - python 列表中的元素存储在哪里?

转载 作者:太空宇宙 更新时间:2023-11-04 08:34:59 24 4
gpt4 key购买 nike

以这个例子对象为例:

class myObj:

def __init__(self):
self.a = 1
self.b = 2
self.c = 3
a = myObj()

我可以使用 vars(a) 我会得到 {'a': 1, 'b': 2, 'c': 3}dir(a) 获取属性列表加上a中的所有函数。我可以看到存储在 a 中的所有内容。

但是,有了列表,情况就不同了。 var([]) 抛出错误,dir([1, 2, 3]) 只列出列表中实现的函数。 __getitem__ 从哪里获取列表中的项目?

最佳答案

在典型的 Python 发行版(称为 CPython)中,列表等内置类型是用 C 而不是 Python 实现的。毕竟不能一路往下都是Python!这意味着内部运作是隐藏的,没有属性会揭示它们。

类似地,您会发现 inspect.getsource([].__getitem__) 不起作用。

关于python - python 列表中的元素存储在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49909792/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com