Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk melaksanakan objek berterusan dalam Python?

Bagaimana untuk melaksanakan objek berterusan dalam Python?

WBOY
WBOYke hadapan
2023-09-13 12:41:02759semak imbas

Bagaimana untuk melaksanakan objek berterusan dalam Python?

Untuk melaksanakan objek berterusan dalam Python, gunakan perpustakaan berikut.

  • Di rak
  • Kimchi

Modul rak

"rak" ialah objek seperti kamus yang berterusan. Perbezaan dengan pangkalan data "dbm" ialah nilai (bukan kekunci!) dalam rak pada dasarnya boleh menjadi sebarang objek Python - apa sahaja yang boleh dikendalikan oleh modul acar. Ini termasuk kebanyakan kejadian kelas, jenis data rekursif dan objek yang mengandungi sejumlah besar sub-objek dikongsi.

Ia mempunyai beberapa kaedah utama -

  • shelve.open() - Buka kamus yang berterusan. Nama fail yang dinyatakan ialah nama fail asas pangkalan data asas. Sebagai kesan sampingan, sambungan boleh ditambah pada nama fail dan berbilang fail boleh dibuat. Secara lalai, fail pangkalan data asas dibuka untuk membaca dan menulis.

  • shelve.sync() − Jika rak dihidupkan dengan tulis balik ditetapkan kepada Benar, semua entri dalam cache ditulis kembali. Jika boleh, cache juga disiram dan kamus berterusan disegerakkan dengan data pada cakera. Kaedah ini dipanggil secara automatik apabila rak ditutup menggunakan close().

  • shelve.close() − Segerakkan dan tutup objek kamus yang berterusan.

modul acar

modul acar melaksanakan protokol binari untuk mensiri dan menyahsiri objek Python struktur.

  • Acar ialah proses menukar hierarki objek Python kepada bait aliran. Untuk menyusun hierarki objek, hanya panggil fungsi dumps().

  • Menyahjeruk ialah operasi terbalik. Dihuraikan daripada fail binari atau aliran bait seperti objek bait Tukar semula kepada hierarki objek. Untuk menyahsiri aliran data, anda memanggil fungsi loads(). Fungsi.

Fungsi modul acar

Berikut adalah fungsi yang disediakan oleh modul jeruk.

  • pickle.dump() - Menulis perwakilan jeruk objek ke dalam fail objek fail terbuka.

  • pickle.dumps() − mengembalikan perwakilan acar objek sebagai objek bait dan bukannya Tulis pada fail.

  • pickle.load() - Membaca perwakilan jeruk objek daripada fail objek fail terbuka.

  • pickle.loads() - Mengembalikan hierarki objek yang dibina semula bagi perwakilan data yang dijeruk Objek

Contoh

Pertama, import modul jeruk -

import pickle

Kami telah mencipta input berikut untuk penjerukan.

my_data = { 'BMW', 'Audi', 'Toyota', 'Benz'}

fail demo.pickle telah dibuat. Fail .pickle yang sama ini dijeruk dengan senarai di atas.

with open("demo.pickle","wb") as file_handle:
   pickle.dump(my_data, file_handle, pickle.HIGHEST_PROTOCOL)

Sekarang, keluarkan fail jeruk di atas dan dapatkan nilai input.

with open("demo.pickle","rb") as file_handle:
   res = pickle.load(file_handle)
   print(res_data)

Sekarang mari kita lihat contoh lengkapnya.

import pickle

# Input Data
my_data = { 'BMW', 'Audi', 'Toyota', 'Benz'}

# Pickle the input
with open("demo.pickle","wb") as file_handle:
   pickle.dump(my_data, file_handle, pickle.HIGHEST_PROTOCOL)

# Unpickle the above pickled file
with open("demo.pickle","rb") as file_handle:
   res = pickle.load(file_handle)
   print(my_data) # display the output

Output

set(['Benz', 'Toyota', 'BMW', 'Audi'])

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan objek berterusan dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam