一、文件备份
1、步骤:
接收用户输入的文件名 -> 规划备份文件名 -> 备份文件写入数据
2、代码实现:
#1接收用户输入的目标文件名
old_name = input('请输入要被备份的文件名:')
#2规划备份文件名
index = old_name.rfind('.') #提取文件后缀点的下标
if index > 0:
postfix = old_name[index:] #有效文件才备份
new_name = old_name[:index] + '[备份]' + postfix #组织新文件名
#3备份文件写入数据
old_f = open(old_name,'rb')
new_f = open(new_name,'wb') #打开源文件和备份文件
#将源文件数据写入备份文件
while True:
con = old_f.read(1024)
if len(con) == 0:
break
new_f.write(con)
#关闭文件
old_f.close()
new_f.close()
二、文件操作
在python中文件和文件夹的操作要借助os模块的相关功能
1、rename() 重命名
例:os.rename(‘1.text’,‘10.text’)
将文件1.text 重命名为10.text
2、remove() 删除文件
例:os.remove(‘1.text’)
删除1.text文件(不存在时报错)
三、文件夹操作
同需os模块
1、mkdir() 创建文件夹
例:os.mkdir(‘aa’)
创建文件夹aa(已有时报错)
2、rmdir() 删除文件夹
例:os.rmdir(‘aa’)
删除文件夹aa
3、getcwd() 返回当前文件夹所在的目录路径
例:print(os.getcwd())
打印当前文件路径
4、chdir() 改变目录路径
例:os.chdir(‘aa’)
改变当前路径到文件夹aa下
5、listdir() 以列表形式返回某个文件夹下的所有文件
例:print(os.listdir(‘aa’))
将aa文件夹中的所有文件,以列表形式返回
6、1、rename() 重命名
例:os.rename(‘aa’,‘bb’)
将文件夹aa重命名为bb
四、简单应用案例
案例:批量修改文件名,既可添加指定字符串又能删除指定字符串
import os
#构造条件的数据
flag = 1
#找到所有文件
file_list = os.listdir()
#构造名字
for i in file_list:
if flag == 1:
new_name = 'python-' + i
elif flag == 2:
num = len('python-')
new_name = i[num:]
#重命名
os.rename(i,new_name)
(flag=1,执行添加前缀操作,flag=2执行删除操作。删除运行时如果有.idea文件夹会报错,需要先删除才可以运行)