Day 8 : Python 文档操作
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 文档操作的更多相关文章
- 吴裕雄--天生自然python学习笔记:python文档操作批量替换 Word 文件中的文字
我们经常会遇到在不同的 Word 文件中的需要做相同的文字替换,若是一个一个 文件操作,会花费大量时间 . 本节案例可以找出指定目录中的所有 Word 文件(包含 子目录),并对每一个文件进行指定的文 ...
- Python文档操作
1.打开和关闭文件 open('C:\Users\Second One\Desktop\a.txt')文件路径必须完整路径且为字符串格式 有三种方式: open('C:\\Users\\Second ...
- 吴裕雄--天生自然python学习笔记:python文档操作自动生成菜单 Word 文件
许多学校营养午餐的菜单是由教师来轮流制作 ,这是一个 比较烦锁的工作,如 果能自动用教师最熟悉的 Word 文件来生成一个菜单文件,使教师对生成的菜单稍作 修改即可使用,那将是一个不错的主意. 案例要 ...
- 吴裕雄--天生自然python学习笔记:python文档操作自动查找替换 Word 文件中的指定文字
Win32com 组件提供了自动替换 Word 文件中指定文字 的功能 .在使用“查找” 功能替换文字之前,可先清除源文字及目标文字的格式,以免影响替换效果,语法为 : 替换 Word 文件特定文字的 ...
- 吴裕雄--天生自然python学习笔记:python文档操作插入图片
向 Word 文件中插入图片 向 Word 文件插入图片的语法为: 例如,在 cl ip graph.docx 文件的第 4 段插入 ce ll.jpg 图片,井将图片文件保存于 Word 文件内: ...
- 吴裕雄--天生自然python学习笔记:python文档操作表格处理
表格也是 Word 文件中常用的对象,下面讲解 Win32com 中常用的表格操作命令 . 新建表格的语法为: 在 Word 文件中新建一个表格并插入单元格内容 在 Word 文件中新建一个 3 行 ...
- python 全栈开发,Day54(jQuery的属性操作,使用jQuery操作input的value值,jQuery的文档操作)
昨日内容回顾 jQuery 宗旨:write less do more 就是js的库,它是javascript的基础上封装的一个框架 在前端中,一个js文件就是一个模块 一.用法: 1.引入包 2.入 ...
- python全栈开发day48-jqurey自定义动画,jQuery属性操作,jQuery的文档操作,jQuery中的ajax
一.昨日内容回顾 1.jQuery初识 1).使用jQuery而非JS的六大理由 2).jQuery对象和js对象转换 3).jQuery的两大特点 4).jQuery的入口函数三大写法 5).jQu ...
- 基于 Python 官方 GitHub 构建 Python 文档
最近在学 Python,所以总是在看 Python 的官方文档, https://docs.python.org/2/ 因为祖传基因的影响,我总是喜欢把这些文档保存到本地,不过 Python 的文档实 ...
随机推荐
- 配置类一@Configuration
import org.springframework.context.annotation.Configuration; @Configuration用于定义配置类,可替换xml配置文件,被注解的类内 ...
- nginx、php-fpm安装mongodb及驱动扩展
1.安装mongodb linux下安装mongodb很简单,执行如下命令完成安装 wget http://downloads.mongodb.org/linux/mongodb-linux-i686 ...
- 【JUC】JDK1.8源码分析之AbstractQueuedSynchronizer
一.前言 在锁框架中,AbstractQueuedSynchronizer抽象类可以毫不夸张的说,占据着核心地位,它提供了一个基于FIFO队列,可以用于构建锁或者其他相关同步装置的基础框架.所以很有必 ...
- 手机网站Meta的使用
meta指元素可提供有关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词. 标签位于文档的头部,不包含任何内容. 标签的属性定义了与文档相关联的名称/值对. ...
- java中的反射机制和javaBean
反射 反射:就是通过一个类加载进方法区时加载到栈内存中的Class字节码文件对这个类进行解剖 通过反射可以获取到一个类的构造方法,成员方法,成员变量 反射将一个类的各个部分映射成相应的类 反射获取构造 ...
- this.$router.go()和this.$router.push()的差别
1.this.$router.go(val) => 在history记录中前进或者后退val步,当val为0时刷新当前页面. 2.this.$router.push(path) => 在h ...
- 大道浮屠诀---NBU报错代码之status2
在一次windows2008R2系统上部署7.7.3备份过程中遇到了此报错 当备份catalog时,会出现status 2报错 经过一系列排查后,得出如下解决方法 1.任务进程中有大量的nbtelem ...
- 12-MySQL-Ubuntu-数据表的查询-数据准备和基本查询(一)
一,数据准备 创建数据库.数据表 -- 创建数据库 create database python_test_1 charset=utf8; -- 使用数据库 use python_test_1; -- ...
- Restoring Road Network Floyd
问题 C: Restoring Road Network 时间限制: 1 Sec 内存限制: 128 MB提交: 731 解决: 149[提交] [状态] [讨论版] [命题人:admin] 题目 ...
- 无LoadLibrary获取指定模块基址
实际上,这块可以写成汇编,然后做远程注入用 方法 1.通过fs:[30h]获取当前进程的_PEB结构 2.通过_PEB的Ldr成员获取_PEB_LDR_DATA结构 3.通过_PEB_LDR_DATA ...