目录
文件操作:打开,关闭,读,写,复制,删除……
文件操作的作用:
1.读取内容,写入内容,备份内容
2.把一些内容(数据)存储起来,可以让程序下一次执行的时候直接使用,而不必重新制作一份,省时省力
打开:
open(name,mode):
在Python中使用open函数,可以打开一个已经存在的文件,或者创建一个新文件
name: 是要打开的目标文件名的字符串(可以包含文件所在的具体路径)
mode: 设置打开文件的模式(访问模式):只读,写入,追加等
语法:
f = open('test.txt','w') 此时的f是open函数的文件对象
写:
文件对象.write('内容'):
读:
文件对象.read(num):
num表示要从文件中读取的数据的长度(单位字节),如果没有传入num,那么就表示读取文件中所有的数据
readlines():
可以按照行的方式把整个文件中的内容进行一次性的读取,并且返回的是一个列表,其中每一行的数据为一个元素
count = f.readlines()
返回的数据为一个列表,并且每一行的数据为一个元素(包括每行的换行符也会打印)
print(count)
readline():
一次读取一行内容
count = f.readline()
print(count) # 此时打印第一行数据
print(count) # 此时打印第二行数据
(模式当中的指针相当于光标的位置)
关闭:
文件对象.close():
关闭文件
文件的访问模式:
r 以只读方式打开文件,文件的指针将会放在文件的开头--默认模式
rb 以二进制格式打开一个文件用于只读,文件指针将会放在文件的开头--默认模式
r+ 打开一个文件用于读写,文件指针将会放在文件的开头
rb+ 以二进制格式打开一个文件用于读写,文件指针将会放在文件的开头
w 打开一个文件只用于写入,如果该文件已存在则打开文件,并从文件开始编辑,即原有内容会被删除,如果该文件不存在,创建新文件wb 以二进制格式打开一个文件只用于读写,如果该文件已存在则打开文件,并从文件开始编辑,即原有内容会被删除,如果该文件不存在,创建新文件
w+ 打开一个文件用于读写,如果该文件已存在则打开文件,并从文件开始编辑,即原有内容会被删除,如果该文件不存在,创建新文件
wb+ 以二进制格式打开一个文件用于读写,如果该文件已存在则打开文件,并从文件开始编辑,即原有内容会被删除,如果该文件不存在,创建新文件
a 打开一个文件用于追加,如果该文件已存在,文件指针将会放在文件的结尾,也就是说新的内容将会被写入到已有内容之后,如果该文件不存在,创建新文件进行写入
示例代码
#f = open('1.txt','w')
#f.write('aaa')
#f.close()
文件操作函数:
seek()
作用: 用来移动文件指针
语法:
文件对象.seek(偏移量,起始位置)
参数解析:
起始位置 :
0:文件开头
1: 当前位置
2: 文件结尾
偏移量: 即是光标位置往后多少位置开始读取(单位字节数量)
文件备份 :
需求: 用户输入当前目录任意文件名,程序完成对该文件的备份。结果如: test[备份].txt
步骤:
1.接收用户输入的文件名
2.规则备份文件名
3.备份文件写入数据
操作:
1.接收用户输入文件名
oldname = input('输入要备份的文件名')
2.规则备份
2.1. 提取目标文件后缀
提取文件后缀点的下标(字符串查找子串-------从右)
index = oldname.rfind('.')
# index 后缀中.的下标
# oldname[:index] 源文件名(无后缀)
输入判断(若用户输入无效文件名)
if index > 0:
postfix = oldname[index:]
2.2. 组织备份的文件名,xx[备份].后缀
组织新文件名
# newname = oldname[:index] + '[备份]'+oldname[index:]
newname = oldname[:index] + '[备份]'+postfixstfix
3.备份文件写入数据
3.1.打开源文件和备份文件
oldf = open()
newf = open()
3.2.将源文件数据写入备份文件
while True:
con = oldf.read(1024)
if len(con) == 0:
break
3.3.关闭文件
文件和文件夹的操作:
在Python中,文件和文件夹的操作要借助os模块里面的相关功能
步骤如下:
1.导入os模块
import os
2.使用os模块相关功能
os.函数名()
文件操作:
文件重命名
os.rename(目标文件名,新文件名)
删除文件
os.remove(目标文件名)
文件夹操作
文件夹重命名----与文件同
文件夹删除------与文件同
创建文件夹 os.mkdir(文件夹名字)
删除文件夹 os.rmdir(文件夹名字)
获取当前目录 os.getcwd() 返回当前文件夹所在的路径
改变默认目录 os.chdir(目录)
获取目录列表 os.listdir(目录)
获取指定目录 对象= './'
示例代码
# f = open('a.txt','w')
# f.write('aaa')
# print(f.read()) # 打印读取出来的数据
# f.close()