Kamus Pickle dalam Python

Kamus Pickle Dalam Python



Pickle boleh digunakan untuk pra-memproses rangka kerja entiti Python yang merupakan proses menukar objek daripada memori kepada aliran bait yang boleh disimpan ke cakera sebagai format binari. Prosedur ini dikenali sebagai serialization. Untuk mencapai ini, gunakan kaedah pickle dump(). Apabila rekod perduaan ini dimuatkan ke dalam program Python sekali lagi, ia boleh dinyahsiri dan ditukarkan kembali kepada objek Python menggunakan kaedah pickle load().

Artikel ini mengajar anda cara menyimpan data, lebih khusus kamus, menggunakan modul acar Python. Untuk memulakan, kita mesti mendapatkan modul jeruk. Pickle dump() menerima tiga parameter. Input pertama menentukan data untuk disimpan. Parameter kedua ialah objek fail yang dikembalikan apabila fail dibuka dalam mod tulis-perduaan (wb). Argumen nilai kunci ialah parameter ketiga. Protokol ditakrifkan oleh parameter ini. Acar dikelaskan kepada dua jenis: PROTOKOL TERTINGGI serta PROTOKOL LALAI jeruk. Untuk mendapatkan semula atau menyahsiri data, kaedah pickle load() digunakan di mana objek fail diperoleh dengan membuka fail dalam mod baca binari (rb).







Contoh 1: Pensirilan dan Penyahserikatan Data dalam Fail Acar Menggunakan Fungsi Longgokan dan Muatan Acar

Dalam contoh ini, kita akan belajar cara mensiri dan menyahsiri data sebagai kamus dengan kod yang sangat mudah.




Dalam kod yang dibentangkan dalam ilustrasi sebelumnya, modul jeruk pertama dari perpustakaan Python diimport supaya kaedahnya boleh digunakan. Kemudian, kamus data dengan 2 kunci dan nilai dimulakan dan disimpan dalam pembolehubah bernama 'bentuk'. Dalam baris seterusnya, kaedah pickle dump() digunakan untuk membuka fail baharu dengan nama 'info.p' dalam mod tulis-perduaan (wb) dan data 'bentuk' disimpan dalam fail ini. Dalam baris seterusnya, kaedah pickle load() digunakan untuk fail yang sama di mana kami membuang data dalam mod rb. Ini mengembalikan data kamus kami dan disimpan dalam pembolehubah bernama 'a'. Akhirnya, objek yang dikembalikan ini dipaparkan pada terminal output menggunakan arahan cetak seperti yang ditunjukkan dalam tangkapan skrin berikut.



Kita dapat melihat bahawa data pertama kali disimpan dalam fail 'info.p' menggunakan kaedah dump. Kemudian, apabila kami menggunakan kaedah load() ke fail yang sama, kami mendapat semula data kami.





Contoh 2: Menggunakan Fungsi Pickle Dump dengan Protokol Tambahan untuk Mensiri Data dalam Python

Ini adalah contoh yang sama di mana kami menggunakan protokol tambahan, 'PROTOCOL TERTINGGI', bagi jeruk yang merupakan protokol terkini. Protokol ini membenarkan ciri bahasa baharu yang boleh kami gunakan dan menyertakan pengoptimuman.




Dalam kod yang disediakan dalam ilustrasi sebelumnya, modul jeruk pertama diimport. Kemudian, kamus satu item dengan kunci dan nilai dimulakan dan disimpan dalam pembolehubah 'a'. Dalam baris seterusnya, fail baharu iaitu 'info.p' dibuka dalam mod wb sebagai pemegang. Sekarang, fail itu berada dalam objek yang dipanggil 'pemegang'. Kemudian, fungsi dump() digunakan untuk''mengendalikan' dengan kamus 'a' menggunakan 'PROTOCOL_TERTINGGI'. Ini membolehkan kamus dalam 'a' disimpan dalam fail 'info.p' pada cakera komputer. Untuk mengekstrak maklumat daripada fail, fail dibuka dalam mod 'rb' terlebih dahulu. Kemudian, kaedah pickle load() digunakan untuk fail ini. Data yang dikembalikan disimpan dalam atribut 'b'. Akhir sekali, menggunakan arahan cetak, maklumat ini dipaparkan pada nod output, seperti yang dilihat dalam tangkapan skrin berikut:

Contoh 3: Pensirilan dan Penyahserikatan Senarai Data dalam Fail Acar Menggunakan Fungsi Longgokan Acar dan Muatan

Dalam contoh ini, modul jeruk diimport terlebih dahulu. Kemudian, beberapa data dimasukkan ke dalam kamus dalam format senarai dan disimpan dalam pembolehubah 'shape_colors'. Dalam baris seterusnya, kaedah pickle dump() digunakan secara langsung dengan data ini. Sebagai ganti fail dalam parameternya, fail 'info.p' dibuka dalam mod wb. Akibatnya, data kamus kini dibuang ke dalam fail ini yang disimpan pada cakera komputer. Kemudian, untuk membaca data daripada fail, kaedah pickle load() digunakan pada fail yang sama. Data yang dikembalikan disimpan dalam pembolehubah 'a'. Akhir sekali, menggunakan arahan cetak, maklumat ini dipaparkan pada terminal sekunder, seperti yang digambarkan dalam petikan berikut:



Contoh 4: Menyimpan Maklumat dalam Fail Pickle Menggunakan Fungsi Pickle Dump dan Memuatkan dengan Parameter Berbeza

Dalam kod yang disediakan, modul acar pertama diimport. Kemudian, kamus gaji dimulakan dan disimpan dalam pembolehubah 'gaji'. Dalam baris seterusnya, fail baharu 'gaji.p' dibuka dalam mod wb sebagai pemegang. Sekarang, fail itu berada dalam objek yang dipanggil 'pemegang'. Kemudian, fungsi pickle dump() digunakan untuk 'mengendalikan' dengan kamus 'gaji' menggunakan 'PROTOCOL_TERTINGGI'. Ini membolehkan kamus dalam 'gaji' disimpan dalam fail 'gaji.p' pada cakera komputer. Sekarang, untuk mendapatkan semula data daripada fail, fail itu mula-mula dibuka dalam mod 'rb'. Kemudian, kaedah pickle load() digunakan untuk fail ini. Maklumat yang dikembalikan disimpan dalam pembolehubah 'a'. Akhirnya, melalui menggunakan perintah cetak, data ini dipaparkan pada penghujung output seperti yang digambarkan dalam petikan berikut:



Contoh 5: Pensirian dan Penyahserikatan Data dalam Berbilang Dimensi dalam Fail Acar Menggunakan Fungsi Longgokan Acar dan Muatan

Mencipta DataFrames (jadual berbilang dimensi) dalam Python adalah berguna untuk menguji kaedah dan fungsi baharu yang terdapat dalam modul Python Panda. Terdapat pelbagai kaedah untuk membina DataFrame dari awal, tetapi salah satu yang paling mudah ialah menggunakan kamus asas.


Dalam kod yang disediakan dalam ilustrasi sebelumnya, acar pertama dan modul Pandas diimport. Kemudian, jadual berbilang dimensi dicipta menggunakan kaedah pd.DataFrame(). Atribut strategi seterusnya ialah senarai empat senarai. Setiap senarai sepadan dengan baris jadual. Parameter kedua ialah 'lajur' yang mentakrifkan tajuk setiap lajur jadual. DataFrame ini disimpan dalam 'pra'. Kemudian, fail baharu iaitu 'attendance.p' dibuka dalam mod wb dan kaedah pickle dump() digunakan pada fail ini dengan DataFrame. Kini, data kami yang ditentukan disimpan dalam fail 'attendance.p' pada cakera keras komputer.


Untuk mendapatkan semula data daripada fail, kami membuka fail dalam mod rb yang membolehkan pembacaan fail. Kemudian, kaedah pickle load() digunakan dalam fail 'attendance.p'. Akhirnya, data dalam fail dipaparkan di terminal output. Seperti yang kita lihat, keseluruhan DataFrame dipaparkan pada terminal output yang disimpan dalam fail 'attendance.p'.

Kesimpulan

Ambil langkah berjaga-jaga tambahan apabila bekerja dengan fail jeruk. Modul acar tidak mempunyai keselamatan. Hanya keluarkan data yang anda yakini. Anda boleh membuat data acar berniat jahat yang mungkin melaksanakan kod sewenang-wenangnya semasa proses nyahjeruk. Walau bagaimanapun, ia adalah kaedah yang berkesan untuk menyimpan kamus, senarai dan jadual dalam Python. Penjerukan amat berfaedah dalam analisis data apabila anda melaksanakan operasi rutin pada data seperti pra-pemprosesan. Saya harap artikel ini membantu anda mengetahui tentang kaedah berbeza modul acar Python dan cara menggunakannya dengan kamus.