第031讲:永久存储,腌制一缸美味的泡菜 | 学习记录(小甲鱼零基础入门学习Python)
(标答出处: 鱼C论坛)
《零基础入门学习Python》
测试题:
0.pickle的实质是什么?
pickle的实质是利用一些算法,将你的数据对象腌制成二进制文件,存储在磁盘上,也可以放在数据库或者传到另一台电脑上
1.使用pickle的什么方法存储数据?
pickle.dump(data,file),第一个参数是待存储的数据对象,第二个参数是目标存储的文件对象,注意要先使用“wb”的模式open文件
2.使用pickle的什么方法读取数据?
pickle.load(file) 参数是目标存储的文件对象,注意要先使用“rb”模式open文件
3.使用pickle能不能保存为“.txt”类型的文件?
可以,不过打开后是乱码,因为是以二进制的模式写入的
动动手:
0.编写一个程序,这次要求使用pickle将文件里的对话按照以下要求腌制成不同文件(没错,是第29讲的内容小改,考考你自己能写出来吗?)
·小甲鱼的对话单独保存为boy_.txt的文件(去掉“小甲鱼”)
·小客服的对话单独保存为girl_.txt的文件(去掉“小客服”)
·文件中总共有三段对话,分别保存为boy_1.txt,girl_1.txt,boy_2.txt,girl_2.txt,boy_3.txt,girl_3.txt共6个文件(提示:文件中不同的对话间已使用“=========”分割)
import pickledef save_file(boy,girl,count):file_name_boy = 'boy_'+str(count) +'.txt'file_name_girl = 'girl_'+str(count)+'.txt'boy_file = open(file_name_boy,'wb') #must wbgirl_file = open(file_name_girl,'wb')pickle.dump(boy,boy_file)pickle.dump(girl,girl_file)boy_file.close()girl_file.close()def split_file(file_name):count = 1boy = []girl =[]f = open(file_name)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:save_file(boy,girl,count)boy = []girl = []count += 1save_file(boy,girl,count)f.close()split_file('record.txt')
第031讲:永久存储,腌制一缸美味的泡菜 | 学习记录(小甲鱼零基础入门学习Python)相关推荐
- 第031讲:永久存储:腌制一缸美味的泡菜
0. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式! 我们之前学习了文件和文件系统,我们知道从一个文件里面去读取字符串是非常简单的,但是你如果要试图读取出数值的话,name就要 ...
- 小甲鱼零基础入门学习python--课后作业(更新至第19讲,持续更新)
本章内容: 小甲鱼零基础入门学习python--课后作业 1.基础部分的作业 2.函数部分的作业 3.字典.集合.文件部分作业 4.异常 5.EasyGui 6.类.对象.魔法方法 7.模块 8.爬虫 ...
- 第063讲: 论一只爬虫的自我修养11:Scrapy框架之初窥门径 | 学习记录(小甲鱼零基础入门学习Python)
上一节课我们好不容易装好了 Scrapy,今天我们就来学习如何用好它,有些同学可能会有些疑惑,既然我们懂得了Python编写爬虫的技巧,那要这个所谓的爬虫框架又有什么用呢?其实啊,你懂得Python写 ...
- 第023、024讲:这帮小兔崽子汉诺塔 | 学习记录(小甲鱼零基础入门学习Python)
(标答出处: 鱼C论坛) <零基础入门学习Python> 测试题: 0.使用递归编写一个十进制转换为二进制的函数(要求采用'取2取余'的方式,结果与调用bin()函数一样返回字符串形式) ...
- 第028讲:文件:因为懂你,所以永恒 | 学习记录(小甲鱼零基础入门学习Python)
c 0.下边只有一种方式不能打开文件,请问是哪一种,为什么? f = open('E:/test.txt','w') #A f = open('E:\test.txt','w') #B f = ope ...
- 第094讲: Pygame:飞机大战5 | 学习记录(小甲鱼零基础入门学习Python)
我们接下来在游戏界面的左上角设置一个得分显示区域,实时显示玩家得分,我们的规则如下: 击落小中大敌机分别可以获得1000,6000,10000分. 我们现在main 函数中添加一个 score 变量统 ...
- 第087讲: Pygame:播放声音和音效 | 学习记录(小甲鱼零基础入门学习Python)
这节课我们来谈谈 Pygame 中的 播放声音和音效,因为几乎没有任何游戏是一声不吭的,多重的感官体验更能刺激玩家的神经,没有声音的游戏就好比 不蘸番茄的薯条,尽管如此,Pygame 对于声音的处理并 ...
- 第019讲:我的地盘听我的 | 学习记录(小甲鱼零基础入门学习Python)
(标答出处: 鱼C论坛) <零基础入门学习Python> 测试题: 0.下边程序会输入什么? def next():print('我在next()函数里...')pre()def pre( ...
- 第088讲: Pygame:摩擦摩擦 | 学习记录(小甲鱼零基础入门学习Python)
现在 Play The Ball 这个小游戏现在已经有了背景音乐,有了小球,有了碰撞检测,接下来我们要做的就是摩擦摩擦. 我们有一块玻璃面板的图片,如下图所示:这些是我的图片素材. 在这里,因为再看了 ...
最新文章
- pythonweb开发-Python Web开发从入门到精通
- 【长尾分布】用半监督或自监督解决
- 如何java面试_短时间如何过java面试?
- Oracle null 处理
- word 文字超出表格边框怎么办
- ubuntu 本地源搭建
- 会议论文有没有影响因子_关于论文是否被SCI、Ei、ISTP等检索以及期刊影响因子的解说...
- 折弯机使用说明书_折弯机操作图解法-如何使用折弯机
- HTML 动态夜空特效
- Java系统插件开发原理与实例
- 简易xp画图板程序流程
- Excel数据合并(追加写入)
- RPA智能客服机器人,电商的好伙伴
- openGauss数据库源码解析系列文章——openGauss开发快速入门(一)
- Keil 编译前后 自动将 hex 转 bin
- ubuntu20.04 TL-WDN5200H无线usb网卡在Linux上的使用
- SQL Server2008下载链接以及安装教程
- 二向箔-百日打卡writeup26-30
- COBIT设计指南信息和技术治理解决方案的设计
- 《Kaggle》Kaggle比赛怎么进行数据分析
热门文章
- Codeforces Round #703 (Div. 2)C1C2	 Guessing the Greatest(二分)
- java货郎担问题求解_货郎担问题的四种实现方法
- 微信小程序聊天功能PHP,微信小程序实现聊天室
- 多角度解析特斯拉电动车技术到底领先了多少?|厚势
- 科学计算机复利现值怎么计算公式,怎么用科学计算器算年金现值和复利现值是那个......
- vue antvG6 绘制组织架构图
- 一般哪些原因会造成硬盘损坏呢
- 基于STM32单片机的跑步机心率检测proteus仿真原理图PCB
- 一步一步搭建 oracle 11gR2 rac+dg之grid安装(四)
- 【openfilier】配置iSCSI存储