Python如何循环字典中的值?

2024-05-18 23:26:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道Python是如何循环遍历字典中的值的。我知道如何在代码中实现它,我读过的所有答案都只是解释了如何实现它。 我想了解python是如何找到这些值的,因为我认为dictionary值与键相关联。字典项也有索引值吗? 感谢您提前回答或参考相关来源:)

我在谷歌上搜索过,堆满了,读过。你知道吗

编辑:我对Python3.7如何实现这一点很感兴趣


Tags: 答案代码编辑dictionary字典来源
1条回答
网友
1楼 · 发布于 2024-05-18 23:26:10

根据源代码(^{})分配一个n(字典中键/值对的大小)元组列表,对于每个非空值项(第2278行:if (value != NULL)),它被设置在元组列表的相应索引处。 python对象本身基本上是一块内存,它知道每个对象的大小(offset)、值的起始位置(value_ptr)以及键的位置(ep)。因此,当您获得键/值(for k,v in object)时,它基本上会遍历为对象分配的内存中已用完的部分。你知道吗

顺便说一句,知道PyList\u SET\u ITEM只是一个宏,它通过所需的索引来设置数组中的值:^{}。由于数组只是按顺序存储在内存中的值,index操作符知道将值放在start + (sizeOf(object)*index)的内存位置。你知道吗

免责声明:这是我第一次尝试阅读python源代码,因此我的解释可能有点偏离或者过于简单。你知道吗

相关问题 更多 >

    热门问题