ต่อไปนี้เป็นตัวอย่างวิธีการเขียนและอ่านไฟล์ดอง โปรดทราบว่าหากคุณต่อท้ายข้อมูลดองลงในไฟล์คุณจะต้องอ่านต่อจากไฟล์จนกว่าคุณจะพบสิ่งที่คุณต้องการหรือมีการสร้างข้อยกเว้นโดยไปถึงจุดสิ้นสุดของไฟล์ นั่นคือสิ่งที่ฟังก์ชันสุดท้ายทำ
import os
import pickle
PICKLE_FILE = 'pickle.dat'
def main():
add_to_pickle(PICKLE_FILE, 123)
add_to_pickle(PICKLE_FILE, 'Hello')
add_to_pickle(PICKLE_FILE, None)
add_to_pickle(PICKLE_FILE, b'World')
add_to_pickle(PICKLE_FILE, 456.789)
for item in read_from_pickle(PICKLE_FILE):
print(repr(item))
os.remove(PICKLE_FILE)
def add_to_pickle(path, item):
with open(path, 'ab') as file:
pickle.dump(item, file, pickle.HIGHEST_PROTOCOL)
def read_from_pickle(path):
with open(path, 'rb') as file:
try:
while True:
yield pickle.load(file)
except EOFError:
pass
if __name__ == '__main__':
main()
open('filename', 'wb')