读写文件:
- 常用访问模式
r
:以只读方式打开(默认模式)w
:用于写入,如果文件存在会将其覆盖,不存在则会创建a
:用于写入,如果文件存在会在其后追加内容,不存在则会创建rb
:以二进制的只读方式打开wb
:以二进制的写入模式打开+
:打开一个文件进行更新(可读可写)- 注: 路径中由于
\
是转义符,所以表示路径时,使用\\
或/
或路径前加r
encoding='utf-8'
设置文件编码- 基本格式
txt = open(r'路径', 'r')
print(txt.read())
txt.close()
with open(r'路径', 'r') as txt:
print(txt.read())
.readline()
:从文件中读入一行内容.readlines()
:从文件中读入所有行,以每行为元素形成一个列表.write()
:单行写入,将一个字符串写入文件.writelines()
:直接将列表类型的各元素连接起来并写入.tell()
:文件定位,获取当前文件指针读取到的位置.truncate(x)
:截取输出前x个字符.seek(x,y)
:改变当前文件操作指针的位置,x的值为偏移量单位字节,y的值(0: 文件开头; 1: 当前位置; 2: 文件结尾)- 文件操作实例:
def fileCopy():
try:
old_file = input("请输入需要备份的文件名:")
file_list = old_file.split('.')
new_file = file_list[0] + '_备份.' + file_list[1]
old_f = open(old_file, 'rb')
new_f = open(new_file, 'wb')
content = old_f.read()
new_f.write(content)
except Exception as result:
print("你输入的文件名不存在.", result)
else:
old_f.close()
new_f.close()
print(new_file,"文件备份完成.")
fileCopy()
'''
请输入需要备份的文件名:text.txt
text_备份.txt 文件备份完成.
'''
遍历文件:
- 从文本文件中逐行读入内容并进行处理是一个基本的文件操作需求。文本文件可以看成是由行组成的组合类型,因此,可以使用遍历循环逐行遍历文件。
with open('路径', 'r') as txt:
print(txt.readlines())
for x in txt:
print(x)
操作文件:
import os
os.rename("原名称", "新名称")
import os
os.remove("文件名")
import os
os.getcwd()
import os
os.chdir("路径")
import os
with os.scandir('d:/') as scan:
for s in scan:
print(s.name)
import os
basePath = 'd:/'
for s in os.scandir(basePath):
if os.path.isfile(os.path.join(basePath,s))
print(s)
import os
os.mkdir("文件夹名")
import os
os.redir("文件夹名")