Python 文件的操作方法:

打开文件

 f = open('test','r',encoding='utf-8')
#f :文件句柄
#test:文件绝对路径
#r:打开方式
#encoding 打开文件的编码模式
with open('test',encoding='utf-8') as f:
pass
#如果不输入填写的方式默认是已只读的方式打开
#这种打开方式,文件操作完了之后,系统自动执行close 关闭文件

文本的打开模式:

r 以只读方式打开

 w  以写方式打开 (如果文件不存在,就创建文件,如果文件存在,清空文件,再写入)
a 以追加模式打开 (从 EOF 开始, 必要时创建新文件)
r+ 以读写模式打开
w+ 以读写模式打开
a+ 以读写模式打开
rb 以二进制读模式打开
wb 以二进制写模式打开
ab 以二进制追加模式打开
rb+ 以二进制读写模式打开
wb+ 以二进制读写模式打开
ab+ 以二进制读写模式打开 (
x 如果文件存在报错,不存在则创建 文件的操作方法
read :读 如果打开方式是r read(2)就是读取2个字符,如果是r+b打开模式,则参数代表字节
close:关闭文件
seek:定位光标,定位光标后,读取数据或者写入数据,都在光标后操作(seek的参数是以字节单位为准)
readline:读取一行
write:写
flush:刷新至硬盘,写文件默认都是写至内存,如果执行这个命令,相当于保存了。
tell:读取当前光标位置
 f = open('test','r+',encoding='utf-8')
# with open('test',encoding='utf-8') as f:
f.read(30)
#read 方法 默认参数是-1 也就是读取至文件末尾
#read(20)意思是,读取20个字节
# f.readline()
#读取一行
#参数也是字节,如果输入参数,则和read方法的效果类似
# f.write('xieru\n')
#如果想换行,可以在文件后面加入\n
f.seek(20)
#seek 定位光标。定位完成之后,再写入,会覆盖后置文字
f.write('wo shi sunjinchao')
print(f.tell())
15 f.close 记得关闭文件
##当用户有读操作后,写方法就可以在文件后面追加

例子:把每行的文档中,加入一个age。

修改文件(修改文件,不要修改当前文件,只能创建一个新文件,然后把久文件删除。把新文件重命名):必要时先备份

 import os #导入os模块,文件操作
file_one = open('flie',encoding='utf-8')
file_two = open('flie_bak','w',encoding='utf- 8 ')
#txt文件
# 1、sunjinchao,25
# 2、xianfangdi,24
# 3、sunjinyao,3
for line in file_one:
print(line)
user_list = line.split(',')#字符串方法用逗号分割
print(user_list)
user_list[0] = user_list[0] + ',age'
print(user_list)
#user_list[0].用split方法后,一个段字符串为[0]
user_str = ','.join(user_list)#拼接字符串
print(user_str)
file_two.write(user_str)#把新的内容写入至新文件
file_one.close()
file_two.close()#关闭文件,不然报错
os.remove('test')#删除文件
os.rename('file_bak','file')#重命名 '''
输出的内容
第1个print :1、sunjinchao,26
第2个print:['1、sunjinchao', '26\n']
第3个print:['1、sunjinchao,age', '26\n']
第4个print:1、sunjinchao,age,26
'''

												

Day 8 : Python 文档操作的更多相关文章

  1. 吴裕雄--天生自然python学习笔记:python文档操作批量替换 Word 文件中的文字

    我们经常会遇到在不同的 Word 文件中的需要做相同的文字替换,若是一个一个 文件操作,会花费大量时间 . 本节案例可以找出指定目录中的所有 Word 文件(包含 子目录),并对每一个文件进行指定的文 ...

  2. Python文档操作

    1.打开和关闭文件 open('C:\Users\Second One\Desktop\a.txt')文件路径必须完整路径且为字符串格式 有三种方式: open('C:\\Users\\Second ...

  3. 吴裕雄--天生自然python学习笔记:python文档操作自动生成菜单 Word 文件

    许多学校营养午餐的菜单是由教师来轮流制作 ,这是一个 比较烦锁的工作,如 果能自动用教师最熟悉的 Word 文件来生成一个菜单文件,使教师对生成的菜单稍作 修改即可使用,那将是一个不错的主意. 案例要 ...

  4. 吴裕雄--天生自然python学习笔记:python文档操作自动查找替换 Word 文件中的指定文字

    Win32com 组件提供了自动替换 Word 文件中指定文字 的功能 .在使用“查找” 功能替换文字之前,可先清除源文字及目标文字的格式,以免影响替换效果,语法为 : 替换 Word 文件特定文字的 ...

  5. 吴裕雄--天生自然python学习笔记:python文档操作插入图片

    向 Word 文件中插入图片 向 Word 文件插入图片的语法为: 例如,在 cl ip graph.docx 文件的第 4 段插入 ce ll.jpg 图片,井将图片文件保存于 Word 文件内: ...

  6. 吴裕雄--天生自然python学习笔记:python文档操作表格处理

    表格也是 Word 文件中常用的对象,下面讲解 Win32com 中常用的表格操作命令 . 新建表格的语法为: 在 Word 文件中新建一个表格并插入单元格内容 在 Word 文件中新建一个 3 行 ...

  7. python 全栈开发,Day54(jQuery的属性操作,使用jQuery操作input的value值,jQuery的文档操作)

    昨日内容回顾 jQuery 宗旨:write less do more 就是js的库,它是javascript的基础上封装的一个框架 在前端中,一个js文件就是一个模块 一.用法: 1.引入包 2.入 ...

  8. python全栈开发day48-jqurey自定义动画,jQuery属性操作,jQuery的文档操作,jQuery中的ajax

    一.昨日内容回顾 1.jQuery初识 1).使用jQuery而非JS的六大理由 2).jQuery对象和js对象转换 3).jQuery的两大特点 4).jQuery的入口函数三大写法 5).jQu ...

  9. 基于 Python 官方 GitHub 构建 Python 文档

    最近在学 Python,所以总是在看 Python 的官方文档, https://docs.python.org/2/ 因为祖传基因的影响,我总是喜欢把这些文档保存到本地,不过 Python 的文档实 ...

随机推荐

  1. 【缓存】缓存穿透、缓存雪崩、key重建方案

    一.缓存穿透预防及优化 缓存穿透是指查询一个根本不存在的数据,缓存层和存储层都不会命中,但是出于容错的考虑,如果从存储层查不到数据则不写入缓存层,如图 11-3 所示整个过程分为如下 3 步: 缓存层 ...

  2. NX二次开发-UFUN点构造器UF_UI_point_construct

    #include <uf.h> #include <uf_ui.h> UF_initialize(); //点构造器 char sCue[] = "点构造器" ...

  3. NX二次开发-UFUN输入Part的TAG,获取整个部件表达式的TAG和表达式个数UF_MODL_ask_exps_of_part

    NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_part.h> UF_initialize ...

  4. (转)简述负载均衡&CDN技术

    转:http://www.cnblogs.com/mokafamily/p/4402366.html#commentform 曾经见到知乎上有人问“为什么像facebook这类的网站需要上千个工程师维 ...

  5. (转)mysql分区技术2

    转:http://database.51cto.com/art/201002/184392.htm 非整数列分区 任何使用过分区的人应该都遇到过不少问题,特别是面对非整数列分区时,MySQL 5.1只 ...

  6. 关于resin的一个错误,Resin 启动报错,访问页面500

    背景 客户集成javaagent报错,客户用的是resin,在本地复现问题,修改了bug,其中在resin中发布war包遇到的错误. 完整错误 500 [show] WEB-INF/web.xml:5 ...

  7. pandas中axis的含义

    定义一个dataframe: >>> df a b0 1 31 2 4 现在看两种用法: 1.求行的均值 >>> df.mean(axis=1)0 2.01 3.0 ...

  8. redis通过命令传参以及主从复制

    config set appendonly  yes  临时生效 如果想永久生效的话,执行 config rewrite 并不是所有的都支持修改 config set bind ip  修改bind参 ...

  9. Ubuntu下怎么退出vim编辑器

    vim其实就是vi的升级版,vi里的所有命令vim里都可以用,一般使用来说几乎没什么差别. 写在前面:进入vim编辑器之后无法退出并保存,可以尝试给要编辑的文件sudo权限(例如:sudo vim / ...

  10. PHP算法之宝石与石头

    给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头. S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石. J 中的字母不重复,J 和 S中的所有字符都是字母 ...