Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

คุณช่วยอธิบายการใช้หน่วยความจำพจนานุกรม Python ได้ไหม


พจนานุกรมประกอบด้วยที่เก็บข้อมูลจำนวนหนึ่ง แต่ละถังเหล่านี้ประกอบด้วย

  • รหัสแฮชของออบเจ็กต์ที่จัดเก็บไว้ในปัจจุบัน (ซึ่งไม่สามารถคาดเดาได้จากตำแหน่งของบัคเก็ตเนื่องจากใช้กลยุทธ์การแก้ปัญหาการชนกัน)
  • ตัวชี้ไปยังวัตถุหลัก
  • ตัวชี้ไปยังออบเจ็กต์ค่า

ผลรวมสูงสุดอย่างน้อย 12 ไบต์ในเครื่อง 32 บิตและ 24 ไบต์ในเครื่อง 64 บิต พจนานุกรมเริ่มต้นด้วย 8 ถังเปล่า จากนั้นจะปรับขนาดโดยเพิ่มจำนวนรายการเป็นสองเท่าเมื่อถึงความจุ