Cara menggunakan acar dengan python

Anda baru saja menjalankan proses yang memakan waktu untuk memuat banyak data ke objek python. Mungkin Anda mengorek data dari ribuan situs web. Mungkin Anda menghitung miliaran digit pi. Jika baterai laptop Anda mati atau jika python macet, informasi Anda akan hilang

Pickling memungkinkan Anda untuk menyimpan objek python sebagai file biner di hard drive Anda. Setelah Anda mengambil objek Anda, Anda dapat mematikan sesi python Anda, mem-boot ulang komputer Anda jika Anda mau, dan kemudian memuat objek Anda ke dalam python lagi

Anda dapat mencadangkan file acar Anda ke Google Drive atau DropBox atau stik USB biasa jika Anda mau. Anda dapat mengirimkannya melalui email ke teman

Sebuah kata peringatan. jangan memuat acar yang tidak Anda percayai. Orang jahat dapat membuat acar jahat yang dapat mengeksekusi kode tak terduga di komputer Anda (injeksi SQL, pemaksaan kata sandi, dll). Jauhi acar yang buruk

import pickle

# make an example object to pickle
some_obj = {'x':[4,2,1.5,1], 'y':[32,[101],17], 'foo':True, 'spam':False}

Untuk menyimpan acar, gunakan

with open('mypickle.pickle', 'wb') as f:
    pickle.dump(some_obj, f)

# note that this will overwrite any existing file
# in the current working directory called 'mypickle.pickle'
_8

Sebuah konvensi untuk memberi nama file acar

with open('mypickle.pickle', 'wb') as f:
    pickle.dump(some_obj, f)

# note that this will overwrite any existing file
# in the current working directory called 'mypickle.pickle'
9, tetapi Anda dapat menamainya apa pun yang Anda inginkan

Pastikan untuk

del some_obj

print some_obj
_0 file dalam mode
del some_obj

print some_obj
1 (tulis biner). Ini lebih ramah lintas platform daripada mode
del some_obj

print some_obj
2 (tulis teks) yang mungkin tidak berfungsi di Windows, dll

with open('mypickle.pickle', 'wb') as f:
    pickle.dump(some_obj, f)

# note that this will overwrite any existing file
# in the current working directory called 'mypickle.pickle'
_

Untuk keperluan demonstrasi, saya akan menghapus objek asli dari memori untuk menunjukkan kepada Anda bahwa itu benar-benar hilang

del some_obj

print some_obj

---------------------------------------------------------------------------

NameError                                 Traceback (most recent call last)

<ipython-input-3-3080f97d7e85> in <module>()
      1 del some_obj
      2
----> 3 print some_obj


NameError: name 'some_obj' is not defined
_

Memuat file acar dari hard drive Anda sesederhana

del some_obj

print some_obj
3 dan menentukan jalur file

with open('mypickle.pickle') as f:
    loaded_obj = pickle.load(f)

print 'loaded_obj is', loaded_obj

loaded_obj is {'y': [32, [101], 17], 'x': [4, 2, 1.5, 1], 'foo': True, 'spam': False}

Mengawetkan panda DataFrames

Panda memiliki fungsi pengawetan yang sangat mudah digunakan. Pertama kita akan membuat contoh kerangka data

import pandas as pd

df = pd.DataFrame([range(11), range(100,110)], columns=list('abcdefghijk'))

df

abcdefghijk00123456789101100101102103104105106107108109NaN

panda. Bingkai Data. to_pickle

Simpan kerangka data ke file pickle bernama

del some_obj

print some_obj
4 di direktori kerja saat ini

Kemudian untuk keperluan demonstrasi lagi, saya akan menghapus DataFrame asli

df.to_pickle('my_df.pickle')

del df

panda. Bingkai Data. read_pickle

Untuk memuat kerangka data acar, lakukan saja

df2 = pd.read_pickle('my_df.pickle')

df2

abcdefghijk00123456789101100101102103104105106107108109NaN

Dan hanya itu yang perlu Anda ketahui untuk pengawetan sederhana dengan python

Ini adalah cara mudah untuk mencadangkan objek penting, meneruskan objek di antara skrip, atau bahkan mengirim objek python melalui email ke pythonista lain (tetapi mereka tidak boleh membukanya kecuali mereka yakin Anda tidak memberi mereka acar berbahaya…)

Bagaimana cara membaca file acar dengan Python?

Cara paling dasar untuk membaca file pickle adalah dengan menggunakan fungsi read_pickle() . Fungsi ini mengambil nama file acar sebagai argumen dan mengembalikan DataFrame panda. Seseorang dapat membaca file acar dengan Python menggunakan fungsi read_pickle().

Bagaimana Anda menambahkan acar dengan Python?

Pendekatan .
Impor modul
Buka file dalam mode tulis
Masukkan data
Buang data ke file
Lanjutkan sampai pilihannya ya
Tutup Berkas