Python文档操作
1.打开和关闭文件
open('C:\Users\Second One\Desktop\a.txt')文件路径必须完整路径且为字符串格式
有三种方式:
open('C:\\Users\\Second One\\Desktop\\a.txt')
open('C:/Users/Second One/Desktop/a.txt')
open(r'C:\Users\Second One\Desktop\a.txt')
close(打开后必须要关闭)
2.文件打开模式rt,wt,at
用读模式打开只能读,用写模式打开只能写,不能既读又写
读:
f = open(r'C:\Users\Second One\Desktop\a.txt','r',encoding='utf-8')(以什么编码方式携程的文件就需要以什么编码方式打开)
data = f.read()可以在括号中指定字符个数
f.close()
f.readline()默认读取一行
f.readlines()将内容以列表形式展现出来
写(覆盖):
f = open(r'C:\Users\Second One\Desktop\a.txt','w',encoding='utf-8')
f.write()
f.writable()是否可写
f.writelines()括号内为可迭代对象
f.close()
写(追加):
f = open(r'C:\Users\Second One\Desktop\a.txt','a',encoding='utf-8')
f.write(\n)可以另起一行
f.close
3.pycharm内置自动关闭文件函数
with open(r'C:\Users\Second One\Desktop\a.txt','r',encoding='utf-8') as f:
文件内内容替换
with open(r'C:\Users\Second One\Desktop\a.txt','r',encoding='utf-8') as f1:
data = f1.read()
new = data.replace('abc','sb250')
with open(r'C:\Users\Second One\Desktop\a.txt','w',encoding='utf-8') as f2:
f2.write(new)
4.文件打开模式rb,wb,ab(二进制方式)
with open(r'C:\Users\Second One\Desktop\a.txt','rb') as f:
data = f.read()可以按照字节读取内容
f.write('你好'.encode('utf-8'))汉字必须要进行编码
f.write(b'abc')英文字母及符号需要在字符串前加“b”或者进行转码
5.文件内光标移动
with open(r'C:\Users\Second One\Desktop\a.txt','r',encoding='utf-8') as f:
data=f.read(2)文件读取命令执行一次后光标会移动到读取出的内容的后面,下一次命令执行会在光标车次的位置开始读
光标移动 f.seek()
f.seek(0,0)后面的0表示把光标移动到开头,前面的数字代表光标移动步数
f.seek(0,1)后面的1表示光标相对位置,前面的数字代表光标移动步数
f.seek(0,2)后面的2表示把光标移动到末尾,前面的数字代表光标移动步数
rt模式打开的文件前面的数字只能是0
f.seek(2,0)表示把光标从头开始向右移动2个字节
f.seek(1,1)表示把光标从当前位置想右移动1个字节
f.seek(-3,2)表示把光标从结尾向左移动3个字节
6.利用光标进行动态监控文件
import time
with open(r'C:\Users\Second One\Desktop\a.txt','rb') as f:
f.seek(0,2)
while True:
data = f.read()
if '404' in data:(此写法是错误的,字符串是无法与字节形式打开的文件进行比较的)
if b'404' in data:
print(data)
else:
time.sleep(0.5)
Python文档操作的更多相关文章
- Day 8 : Python 文档操作
Python 文件的操作方法: 打开文件 f = open('test','r',encoding='utf-8') #f :文件句柄 #test:文件绝对路径 #r:打开方式 #encoding 打 ...
- 吴裕雄--天生自然python学习笔记:python文档操作批量替换 Word 文件中的文字
我们经常会遇到在不同的 Word 文件中的需要做相同的文字替换,若是一个一个 文件操作,会花费大量时间 . 本节案例可以找出指定目录中的所有 Word 文件(包含 子目录),并对每一个文件进行指定的文 ...
- 吴裕雄--天生自然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 的文档实 ...
随机推荐
- 牛客假日团队赛5J 护城河 bzoj 1670: [Usaco2006 Oct]Building the Moat护城河的挖掘 (凸包的周长)
链接:https://ac.nowcoder.com/acm/contest/984/J 来源:牛客网 护城河 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言6 ...
- 清北学堂提高组突破营游记day4
今天主攻图论. 对于这道题,30分做法是暴力搜索全部来判断是否有异样. 对于满分做法,利用带权并查集.? 又带我们串了一边LCA 安利个人LCA博客. spfa代码.原理:循环队列. 然后是floyd ...
- JS 循环遍历 总结
一.循环遍历语句 for...in... (ES5) 语法:javascript for(keys in obj){} 适用:遍历对象 说明: 1.keys表示obj对象的每一个键值对的键(键名),所 ...
- Flume 实时获取日志内容插入MySQL
https://www.jianshu.com/p/22e6133649ca 采用链接的方法试了一下,好像不成功,问题出在 channel.take(); //获取出来的Event为空,不知道为啥
- 如何在生产环境下实现每天自动备份mysql数据库
1.描述 通"shell脚本+定时任务"的方式来实现自动备份mysql数据库. 2.环境 备份路径:/data/mysqlbak/ 备份脚本:/data/mysqlbak/mysq ...
- 牛客挑战赛34 A~E
闷声发大财 A O(nmk)dp即可,因为带了1/2的常数+2s所以很稳 #include <algorithm> #include <iostream> #include & ...
- windows如何禁用惹人烦的开机启动广告
本地组策略编辑器 建立新的路径规则 重启电脑 本地组策略编辑器 你现在还在为那些烦人的互联网开机广告而发愁嘛,比如一下几种广告:这样的 还是这样的: 又或者是这样的: 修改了dns也并没有什么卵用,所 ...
- mac安装指定版本的openjdk
先安装SDKMAN,教程在https://sdkman.io/install 然后 sdk list java sdk install java 11.0.5.hs-adpt
- Codeforces 939E Maximize ( 三分 || 二分 )
题意 : 给出两个操作,① 往一个序列集合(初始为空)里面不降序地添加数字.② 找出当前序列集合的一个子集使得 (子集的最大元素) - (子集的平均数) 最大并且输出这个最大差值 分析 : 首先关注 ...
- SPOJ D-query && HDU 3333 Turing Tree (线段树 && 区间不相同数个数or和 && 离线处理)
题意 : 给出一段n个数的序列,接下来给出m个询问,询问的内容SPOJ是(L, R)这个区间内不同的数的个数,HDU是不同数的和 分析 : 一个经典的问题,思路是将所有问询区间存起来,然后按右端点排序 ...