文件的读写:
二进制文件:非记事本文件,如:doc,mp3,jpg等
‘
’
打开模式 | 描述 |
r | 以只读模式打开文件,文件的指针将会放在文件的开头 |
w | 以只写模式打开文件,如果文件不存在则创建,如果文件存在,则覆盖原有内容,文件指针在文件的开头 |
a | 以追加模式打开文件,如果文件不存在则创建,文件指针在文件开头,如果文件存在,则在文件末尾追加内容,文件指针在文件末尾 |
b | 以二进制方式打开文件,不能单独使用,需要与共他模式一起使用,rb或者wb |
+ | 以读写方式打开文件,不能单独使用,需要与其他模式一起使用,a+ |
‘
’
file=open('测试.txt','r')
print(file.readlines()) #以行为单位读取数据,读出方式为列表
file.close()
file=open('测试.txt','a+')
file.write('Python')
file.close()
#拷贝图片
src_file=open('秋绘.png','rb') #read
target_file=open('秋绘2.png','wb') #write
target_file.write(src_file.read())
target_file.close()
src_file.close()
[‘qwer\n’, ‘123’]
‘
‘
’
文件对象的常用方法
关键字 | 描述 |
read([size]) | 从文件中读取size个字节或字符的内容返回。若省略[size],则读取到文件末尾,即一次读取文件所有内容 |
readline() | 从文本中读取一行内容 |
readlines() | 把文本文件中每一行都作为独立的字符串对象,并将这些对象放入列表返回 |
write(str) | 将字符串内容写入文件 |
writelines(s_list) | 将字符串列表s_list写入文本文件,不添加换行符 |
seek(offset[,whence]) | 把文件指针移动到新的位置,offset表示相对于whence的位置: offset:为正往结束方向移动,为负往开始方向移动whence不同的值代表不同含义: 0:从文件头开始计算(默认值) 1:从当前位置开始计算 2:从文件尾开始计算 |
tell() | 返回文件指针的当前位置 |
flush() | 把缓冲区的内容写入文件,但不关闭文件 |
close() | 把缓冲区的内容写入文件,同时关闭文件,释放文件对象相关资源 |
‘
’
file=open('测试.txt','r')
print(file.read())
file.seek(1) #文件指针在从第一个位置开始(若文件内容为中文,1个中文字符=2,对于中文字符seek(1)会报错)
print(file.read())
print(file.tell()) #返回文件指针的当前位置 #换行为两个字符
file.close()
qwer
123PythonPythonPython
wer
123PythonPythonPython
27