入门学习-Python-小甲鱼学习资料-Day031-永久存储:腌制一缸美味的泡菜

本文详细介绍了Python中Pickle模块的使用方法,包括如何将Python对象转化为二进制存储(Pickling),以及如何将二进制文件还原为Python对象(Unpickling)。通过实例展示了Pickle在处理大型数据集时的高效性和便利性,并提供了一个具体的课后练习案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

根据视频自己练习

在这里插入图片描述Pickling – python的对象转化为二进制存放
unpickling – 二进制转化为对象

在这里插入图片描述

import pickle
my_list = [3.1415926,1024,'风魔小次郎',['鱼跃此时海']]
file_pickle = open('my_pickled.pkl','wb')
pickle.dump(my_list,file_pickle)
file_pickle.close()

pickle_file = open('my_pickled.pkl','rb')
my_list2 = pickle.load(pickle_file)
print(my_list2)

上面就是 pickle的基本用法 , 用在这么简单的列表上面是没有意义的 , 但是如果程序里面需要引用一个大的列表,用pickle就很方便了 , 具体可以看天气查询这个例子 ,去掉程序体中的城市列表,如下图:
在这里插入图片描述

课后练习

在这里插入图片描述在这里插入图片描述在这里插入图片描述

import pickle
def write_files(boy,girl,count):
    file_name_boy = 'boy_' + str(count) + '.txt'
    file_name_girl = 'girl_' + str(count) + '.txt'
    boy_file = open('d:/' + file_name_boy, 'wb')
    girl_file = open('d:/' + file_name_girl, 'wb')

    pickle.dump(boy,boy_file)
    pickle.dump(girl,girl_file)

    boy_file.close()
    girl_file.close()

def  splite_file(filename):
    f = open(filename)
    boy = []
    girl = []
    count = 1

    for each_line  in f:
        if each_line[:6] !='======':
            #  字符串操作
            (role,line_spoken)=each_line.split(":",1)
            if  role=='小甲鱼':
                boy.append(line_spoken)
            if  role=='小客服':
                girl.append(line_spoken)
        else:
            write_files(boy,girl,count)

            boy = []
            girl = []
            count += 1
    write_files(boy, girl, count)
    f.close()

splite_file('record.txt')

程序已调试 , 运行正常 !

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值