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文档操作的更多相关文章

  1. Day 8 : Python 文档操作

    Python 文件的操作方法: 打开文件 f = open('test','r',encoding='utf-8') #f :文件句柄 #test:文件绝对路径 #r:打开方式 #encoding 打 ...

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

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

  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. 性能测试:oprofile的学习使用

    一.oprofile简介 Oprofile是linux上的性能监测工具,有人说是性能测试的神器.通过CPU硬件提供的性能计数器对事件进行采样,从代码层面分析程序的性能消耗情况,找出程序性能的问题点. ...

  2. 并查集 || [USACO18JAN]MooTube || BZOJ 5188 || Luogu P4185

    题面:[USACO18JAN]MooTube 题解: 对边和询问都排序,然后每次把符合当前要求的边都扔并查集里,对于每个询问判断当前并查集里节点数即可. 我很无聊地给并查集加了按秩排序,还开了O2,加 ...

  3. 使用 Maven Profile 和 Filtering 打各种环境的包(转)

    http://tunzao.me/articles/maven-profile/ https://blog.csdn.net/syani/article/details/52237470

  4. [bzoj4358]permu:莫队+线段树/回滚莫队

    这道题是几天前水过去的,现在快没印象了,水一发. 首先我们看到它让求解的是最长的值域 连续段长度,很好. 然后就想到了山海经,但但是我还没有做. 然后又想到了很久以前的一次考试的T3旅馆hotel(我 ...

  5. ansj分词器使用记录

    //最简单实例 String ruiec = “分词测试123456100名”; //剔除指定的分词 s.insertStopWords("100名"); //剔除标点符号(w) ...

  6. winform 异步更新ui

    http://download.csdn.net/download/mingge38/9378852

  7. mysql jdbcTemplate访问

    String sql = "select * from xxx_photo_info where user_id in (:userIds)"; userIds从dao传过来时必须 ...

  8. CF452E Three strings 广义后缀自动机

    建一个广义后缀自动机统计一下就行,好长时间不敲后缀自动机调了半天~ #include <bits/stdc++.h> using namespace std; namespace IO { ...

  9. std::string 和 CString问题

    std::string stdTemp; CString strTemp; strTemp = stdTemp;    ;//这一步直接赋值可不可以 因为CString可以接受const char*的 ...

  10. 2019hdu多校 Keen On Everything But Triangle

    Problem Description N sticks are arranged in a row, and their lengths are a1,a2,...,aN. There are Q ...