13.文件:因为懂你,所以永恒
什么是文件?
.exe .avi .mp4 .jpg .ppt
打开文件,并返回文件对象:open
open('文件名',打开方式)
>>> f = open('G:\\FishC.txt')
>>> f
<open file 'G:\\FishC.txt', mode 'r' at 0x0000000002D32E40>
>>> f = open('G:\\FishC.txt','a')
>>> f
<open file 'G:\\FishC.txt', mode 'a' at 0x0000000002D32ED0>
http://bbs.fishc.com/forum.php?mod=viewthread&tid=45279&extra=page%3D1%26filter%3Dtypeid%26typeid%3D403
read()
>>> f = open('G:\\FishC.txt','r')
>>> f.read(5)
'I \nlo'
>>> f.read() #如果没有参数或者参数是0,则读取剩余的所有字符串
've\nFish.com'
>>> f.tell() #返回当前文件指针的位置
18L
seek:移动文件指针
tell:获得文件指针的当前位置
f.seek(offset,from)
其中:在文件中移动文件指针从from(0代表文件起始位置,1代表当前位置,2代表文件末尾)
偏移offset个字节。>>> f = open('G:\\FishC.txt','r')
>>> f.seek(5,1) #移动到当前位置的第5个字节处(1表示当前位置)
>>> f.tell()
5L
打印文件的方法:
方法1:
>>> f = open('G:\\FishC.txt','r')
>>> lines = list(f) #把文件中的内容转换成list
>>> lines
['I \n', 'love\n', 'Fish.com']
>>> for each_line in lines: #定义一个变量依次获取lines列表中的每一个字符串print each_line #并打印I loveFish.com
【说明】这种效率很低方法2:官方推荐
>>> f = open('G:\\FishC.txt','r')
>>> for each_line in f:print each_lineI loveFish.com
写入文件:如果要写入文件,必须用w或a的方式打开文件
>>> f = open('G:\\FishC.txt','a')
>>> f.write('I love FishC')
>>> f.close() #操作完成后,记住一定要关闭文件
>>>
>>> f = open('G:\\FishC.txt','r')
>>> f.read()
'I \nlove\nFish.comI love FishC'
—-
—-
习题
文件中的内容:
A:"You love Fish?"
B:"Yes."
======================
A:"I love Fish?"
B:"No."
======================
A:"We love Fish?"
B:"Yes or No."
======================习题要求:
将A的对话单独保存为A_*.txt(去掉A:)
将B的对话单独保存为B_*.txt(去掉B:)文件中总共有三段话,分别保存为A_1.txt,A_2.txt,A_3.txt,B_1.txt,B_2.txt,B_3.txt共6个
文件(提示:文件中不同的对话之间已经用==========分隔开)print('Begin\n')f = open('G:\\FishC.txt','r')#定义a,b列表进行分别保存A,B的对话
a = []
b = []
count = 0for each_line in f: #依次读取文件中的内容if each_line[:3] != '===': #判断是否等于‘===’,如果不等于,就要进行保存(name,spoken) = each_line.split(':',1)if(name == 'A'):a.append(spoken)elif(name == 'B'):b.append(spoken)else:#把a,b中的内容写入新的文件中count = count + 1file_A = 'G:\\A_'+str(count)+'.txt'file_B = 'G:\\B_'+str(count)+'.txt'f_A = open(file_A,'w')f_A = open(file_A,'w')for A_line in a:f_A.write(A_line)for B_line in b:f_B.write(B_line)file_A.clear()file_B.clear()f_A.close()f_B.close()
f.close()
print('End\n')
13.文件:因为懂你,所以永恒相关推荐
- 文件:因为懂你,所以永恒 +习题复习
##因为懂你,所以永恒 (大多数程序都遵循着输入,处理到输出的模型,首先呢接收用户收入,然后按照要求进行处理,到最后输入数据,目前为止,我们很好地掌握了如何处理数据这块环节,现 ...
- 小甲鱼《零基础学习Python》课后笔记(二十八):文件——因为懂你,所以永恒
测试题 0.下边只有一种方式不能打开文件,请问是哪一种,为什么? f = open('E:/test.txt','w') # A f = open('E:\test.txt','w') # B f = ...
- 解析.DBC文件, 读懂CAN通信矩阵,实现车内信号仿真
通常我们拿到某个ECU的通信矩阵数据库文件,.dbc后缀名的文件. 直接使用CANdb++ Editor打开,可以很直观的读懂信号矩阵的信息,例如下图: 现在要把上图呈现的信号从.dbc文件中解析出来 ...
- c语言程序设计实验13文件,第13章_文件---《C语言程序设计》实验指导.ppt
第13章_文件---<C语言程序设计>实验指导 第十三章 主要内容 13.1 C文件概述 13.2 文件类型指针 13.3 文件的打开与关闭 13.4 文件的读写 13.5 文件的定位 1 ...
- 解析oracle的dump文件,读懂数据块dump文件信息
尊重作者著作,转自http://blog.csdn.net/guoyjoe/article/details/8567076 -------------------------------------- ...
- c语言程序设计实验13文件,C语言程序设计实验指导书
C语言程序设计实验指导书 C 语言程序设计实验指导书 C 语言程序设计实验指导书 实验一:C语言的运行环境及运行 C 程序的方法(2 学时) 一.实验目的和要求:一.实验目的和要求: (1)了解所用的 ...
- Linux(13)-文件权限,chmod
文件权限,chmod 1. 文件权限的概念 2. 修改用户权限 1. 文件权限的概念 Linux中一切皆文件,目录可以看作内容是 文件列表 的文件. 文件涉及的三种权限–读,写,执行 注意: 目录的读 ...
- vue、cnpm不是内部文件_UBoot链接文件 搞懂程序内部长什么样
对于一个程序而言,他们内部的结构.组成通常是不可见的,但是不可见并不意味着其内部是杂乱无章的排布,仅仅是众多的二进制数据拼凑而成.一份源代码生成最终的可执行文件来驱动我们的机器正常工作,中间必经的两个 ...
- 跟着百度学PHP[13]-文件上传
PS:上传的时候一定要用POST方法,GET方法不行. 文件上传的entype要改成"mutilpart/form-data"这个编码 <html><form a ...
最新文章
- CES上百度无人车队炫技,陆奇要用“China speed”改变世界
- 基于Shodan Python库的批量攻击实践 撒旦网
- 在ubuntu16安装supervisor 并 启动 .net core.
- 简单易懂棒棒哒的视频传输工具!
- python正则表达式提取电话号码_Python学习笔模式匹配与正则表达式之电话号码和Email地址提取程序...
- elasticsearch7常见查询(term、match、bool、filter)
- word模板生成word报表文档
- 用pfx证书java双向认证_把CA证书生成的crt的证书和pem的私钥转换成java能够使用的keystore和pcks12的证书,实现https双向认证...
- iOS学习之 plist文件的读写
- Java中startWith方法的使用!
- ue4打包问题的巧妙解决——二分回退大法!
- python中文版软件下载-专业PYTHON开发工具——PyCharm中文汉化版下载(图文)
- STL中的lower_bound()函数和upper_bound()
- redis的配置文件修改
- 面对局域网用户滥用网络执法官,p2p终结者等网管软件的破解方法
- Jquery colorbox不错的遮罩
- 英特尔 QSV 在 FFMPEG 中的使用(Linux)
- 从真正的零组建一台日常使用PC+NAS
- 希尔伯特到解析信号,再到复包络
- 交叉测试、探索性测试的概念、价值、实践