储存00

00

编写一个程序,这次要求使用pickle将文件(record.txt)里的对话按照以下要求腌制成不同文件:

小甲鱼的对话单独保存为boy_*.txt的文件(去掉“小甲鱼:”)

小客服的对话单独保存为girl_*.txt的文件(去掉“小客服:”)

文件中总共有三段对话,分别保存为boy_1.txt, girl_1.txt,boy_2.txt, girl_2.txt, boy_3.txt, gril_3.txt共6个文件(提示:文件中不同的对话间已经使用“==========”分割

import pickle

def file_save(boy, girl, count):
  file_name_boy = ‘boy_‘ + str(count) + ‘.txt‘
  file_name_girl = ‘girl_‘ + str(count) + ‘.txt‘

  boy_file = open(file_name_boy, ‘wb‘)
  girl_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 = 1
  boy = []
  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:
      file_save(boy, girl, count)

    boy = []
    girl = []
    count += 1

  file_save(boy, girl, count)
  f.close()

split_file(‘record.txt‘)

储存00,布布扣,bubuko.com

时间: 2024-10-12 15:12:46

储存00的相关文章

资金计划报表sql 希望大家给点意见,指出我的存储过程里面的错误的地方

IF EXISTS (SELECT * FROM sys.procedures WHERE object_id = OBJECT_ID(N'[dbo].[Proc_FM_RollingBudgetRollingCapitalplan]'))DROP proc [dbo].[Proc_FM_RollingBudgetRollingCapitalplan]GO --exec [Proc_FM_RollingBudgetRollingCapitalplan] 6342,2015,5 --exec [P

【00】Python爬虫初次开发

我的第00篇博客 Python爬虫初次开发: 这周四讲了正则表达式,晚上就开始摸索着写一个网络爬虫.这个爬虫的功能就是从指定的网页开始,爬取这个网页里所有的链接,然后进入这些链接继续爬取新的链接,不断继续这个过程,并保存下所有爬取到的链接.这个爬虫目前还没有什么实际用处,后续可以在此基础上开发搜索指定信息等功能. 这个Python程序将用到以下模块:urllib, re, time urllib:用来调用urlopen函数打开链接 re:编译正则表达式 time:用于计时[可选] 以下是我的代码

Mysql储存过程4:mysql变量设置

默认全局变量是两个@@开头, 可用show variables查看所有默认变量: @@user #declare定义变量只能用在储存过程中 #declare 变量名 数据类型 可选类型 declare num int: declare age int defalut 100; #定义全局变量, 可以用 set声明: #@变量名 #有两种写法, @name := value / @name = value set @age=18; set @age:=18; select @name:=user(

Mysql储存过程1: 设置结束符与储存过程创建

#显示储存过程 show procedure status; #设置结束符 delimiter $; #创建储存过程 create procedure procedure_name() begin --sql语句 end$ create procedure myshow() begin select user(),database(); end$ #调用储存过程 call procedure() call procedure #没有对数时括号可省 mysql> use test$ Databas

Mysql储存过程2:变量定义与参数传递

#储存过程 中的变量定义 declare 变量名 类型 可选类型 -- 跟建表差不多 create procedure p() begin declare age int default(18); declare number int default 1; select age+number; end$ /* mysql> create procedure p() -> begin -> declare age int default(18); -> declare number

使用逻辑卷管理灵活储存

第五单元 一  lvm 定义 Lvm是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性.将磁盘分区处理成物理卷(pv),再将物理卷变成一个整块的卷组(voilmegroup,vg)形成一个储存池.然后就可以在卷组随意创建lvm(逻辑卷组),并进一步在lvm上创建文件系统. Lvm可拉伸也可压缩,当系统添加了新的磁盘,通过lvm,就不用将磁盘的文件移动到新的磁盘上以充分利用新的存储空间.而是直接扩展文件系统跨越磁盘即可 二 lvm 建立 如果出现以下问题: [[email protec

cookie (储存在用户本地终端上的数据)

Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份.进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密).定义于 RFC2109 和 2965 中的都已废弃,最新取代的规范是 RFC6265[1]  .(可以叫做浏览器缓存) 中文名 储存在用户本地终端上的数据 外文名 Cookie 复数形式 Cookies 目录 1 技术简介 2 功能特点 3 具体含义 4 诞生时间 5 主要用途 6 生存周期 7 识别功能 8 脚本攻击 9 相关问题 10 设置Co

MySQL 储存引擎 MyISAM 和 InnoDB 配置

MySQL 存储引擎 MyISAM 和 InnoDB 配置 MyISAM 和 InnoDB 最大特点: MyISAM : ① 不支持事务 . ② 表级锁定形式 ,数据在更新时锁定整个表 . ③ 不支持外键约束 ,只支持全文索引 . ④ 数据库在读取过程中相互阻塞 . ⑤ 数据单独写入或读取 , 速度较快且占用资源相对要少 . InnoDB: ① 支持事务 . ② 行级锁定 ,但是全表扫描仍然会是表级锁定 . ③ 支持分区.表空间 ,类似Oracle 数据库 . ④ 读写阻塞与事务隔离级别相关 .

mysql储存过程

一 介绍 存储过程包含了一系列可执行的sql语句,存储过程存放于MySQL中,通过调用它的名字可以执行其内部的一堆sql.到目前为止,我们上面学的视图.触发器.事务等为我们简化了应用程序级别写sql语句的复杂程度,让我们在应用程序里面写sql更简单方便了,但是我们在应用程序上还是需要自己写sql的,而我们下面要学的存储过程,它是想让我们的应用程序不需要再写sql语句了,所有的sql语句,全部放到mysql里面,被mysql封装成存储过程,说白了它就是一个功能,这个功能对应着一大堆的sql语句,这