Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Menyimpan dan Memuatkan Kamus Python Menggunakan Pickle?

Bagaimanakah Saya Boleh Menyimpan dan Memuatkan Kamus Python Menggunakan Pickle?

Linda Hamilton
Linda Hamiltonasal
2024-12-01 22:23:161045semak imbas

How Can I Save and Load a Python Dictionary Using Pickle?

Menyimpan Kamus Menggunakan Pickle

Pickle ialah modul Python berkuasa yang membolehkan anda mensirikan objek Python ke dalam format binari, membolehkan penyimpanannya dan mendapatkan semula kemudian. Dalam konteks ini, bersiri merujuk kepada penukaran objek ke dalam format yang boleh diangkut merentasi rangkaian atau disimpan secara berterusan ke cakera.

Kod Contoh:

import pickle

# Create a dictionary
a = {'hello': 'world'}

# Open a file for writing in binary mode
with open('filename.pickle', 'wb') as handle:
    # Dump the dictionary into the file using pickle.dump
    pickle.dump(a, handle, protocol=pickle.HIGHEST_PROTOCOL)

# Now, let's read the dictionary from the file
with open('filename.pickle', 'rb') as handle:
    # Use pickle.load to reconstruct the dictionary
    b = pickle.load(handle)

# Finally, compare the original dictionary with the reconstructed one
print(a == b)

Pengertian:

Coretan kod di atas menunjukkan siri kamus, tetapi anda boleh menggunakan pendekatan yang sama untuk menyerikan objek Python lain, seperti senarai, tupel, set, dan juga contoh kelas tersuai.

Satu pertimbangan penting ialah tidak semua objek boleh dijeruk. Contohnya, objek yang mengandungi rujukan kepada sumber luaran (cth., pemegang fail atau sambungan pangkalan data) mungkin tidak boleh bersiri.

Apabila mensiri struktur data yang kompleks, adalah penting untuk memastikan rujukannya dikendalikan dengan betul. Jika tidak, proses penyahserikatan mungkin gagal.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyimpan dan Memuatkan Kamus Python Menggunakan Pickle?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn