1.文件的打开与关闭
文件打开: open(文件名,访问模式)
f = open('test.txt', 'w')
访问模式:
r | 只读 指针在文件的开头。这是默认模式。 |
w | 写入 文件存在则覆盖;不存在,创建新文件。 |
a | 追加 文件存在,指针在尾。文件不存在,创建新文件。 |
rb | 二进制 只读 指针在文件的开头。这是默认模式。 |
wb | 二进制 写入 文件存在则覆盖;不存在,创建新文件。 |
ab | 二进制 追加 文件存在,指针在尾。文件不存在,创建新文件。 |
r+ | 读写 文件指针在文件开头。 |
w+ | 读写 件存在则覆盖;不存在,创建新文件 |
a+ | 追加读写 文件存在,指针在尾。文件不存在,创建新文件。 |
rb+ | 二进制 读写 文件指针在文件开头。 |
wb+ | 二进制 读写 件存在则覆盖;不存在,创建新文件 |
ab+ | 二进制 追加读写 文件存在,指针在尾。文件不存在,创建新文件。 |
文件关闭 close()
f.close()
2.文件读写
f.read()
f.readline() 行方式读取
f.readlines() 行方式读取,返回一个列表,其中每一行的数据为一个元素,可遍历
f.write(内容)
应用:文件复制
#coding=utf-8
oldFileName = input("请输入要拷贝的文件名字:")
oldFile = open(oldFileName,'rb')
# 如果打开文件
if oldFile:
# 提取文件的后缀
fileFlagNum = oldFileName.rfind('.')
if fileFlagNum > 0:
fileFlag = oldFileName[fileFlagNum:] #字符串切分
# 组织新的文件名字
newFileName = oldFileName[:fileFlagNum] + '[复件]' + fileFlag
# 创建新文件
newFile = open(newFileName, 'wb')
# 把旧文件中的数据,一行一行的进行复制到新文件中
for lineContent in oldFile.readlines():
newFile.write(lineContent)
# 关闭文件
oldFile.close()
newFile.close()
print("拷贝结束")
4.文件的重命名+删除 需要到os模块
重命名 f.rename(旧名,新名)
删除 f.remove(文件名)
文件夹相关操作
创建文件夹 os.mkdir("文件夹名")
获取当前目录 os.getcwd()
改变默认目录 os.chdir("新目录")
获取目录列表 os.listdir("路径")
删除文件夹 os.rmdir("文件夹名")
应用:批量修改文件夹名
#coding=utf-8
# 批量在文件名前加前缀
import os
ex=input("请输入文件前缀: ")
folderName = 'C:\\Users\\JinChao\\Desktop\\1\\'
# 获取指定路径的所有文件名字
dirList = os.listdir(folderName)
# 遍历输出所有文件名字
num=1
for name in dirList:
print (name)
x=name.find(".")
newname=str(ex)+str(num)+name[x:]
print(newname)
num=num+1
os.rename(folderName+name,folderName+newname)
print("操作完毕")