Python文档操作

1.打开和关闭文件

open('C:UsersSecond OneDesktopa.txt')文件路径必须完整路径且为字符串格式

有三种方式:

open('C:\Users\Second One\Desktop\a.txt')

open('C:/Users/Second One/Desktop/a.txt')

open(r'C:UsersSecond OneDesktopa.txt')

close(打开后必须要关闭)

2.文件打开模式rt,wt,at

用读模式打开只能读,用写模式打开只能写,不能既读又写

读:

f = open(r'C:UsersSecond OneDesktopa.txt','r',encoding='utf-8')(以什么编码方式携程的文件就需要以什么编码方式打开)

data = f.read()可以在括号中指定字符个数

f.close()

f.readline()默认读取一行

f.readlines()将内容以列表形式展现出来

写(覆盖):

f = open(r'C:UsersSecond OneDesktopa.txt','w',encoding='utf-8')

f.write()

f.writable()是否可写

f.writelines()括号内为可迭代对象

f.close()

写(追加):

f = open(r'C:UsersSecond OneDesktopa.txt','a',encoding='utf-8')

f.write( )可以另起一行

f.close

3.pycharm内置自动关闭文件函数

with open(r'C:UsersSecond OneDesktopa.txt','r',encoding='utf-8') as f:

文件内内容替换

with open(r'C:UsersSecond OneDesktopa.txt','r',encoding='utf-8') as f1:

data = f1.read()

new = data.replace('abc','sb250')

with open(r'C:UsersSecond OneDesktopa.txt','w',encoding='utf-8') as f2:

f2.write(new)

4.文件打开模式rb,wb,ab(二进制方式)

with open(r'C:UsersSecond OneDesktopa.txt','rb') as f:

data = f.read()可以按照字节读取内容

f.write('你好'.encode('utf-8'))汉字必须要进行编码

f.write(b'abc')英文字母及符号需要在字符串前加“b”或者进行转码

5.文件内光标移动

with open(r'C:UsersSecond OneDesktopa.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:UsersSecond OneDesktopa.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)

原文地址:https://www.cnblogs.com/Agnostida-Trilobita/p/11023461.html