文件备份程序代码如下:
import os,json
def back_up(old_name):
len_ = old_name.rfind(".") # 以右边第一个"."为分界线,寻找从右向左的字符串长度
if len_ > 0 and os.path.exists(old_name):
ext = old_name[len_:]
new_name = old_name[:len_]+"(back-up)"+ext # 命名备份文件
with open(new_name, "wb") as f1:
with open(old_name, "rb") as f2:
f1.write(f2.read())
else:
print(f"can't find {old_name}")
back_up(input("name of txt file:"))
该程序一共分两个部分。1,给备份文件起名字 2,把文件内容复制到备份文件中。
我们先看第一部分。首先变量ext是该文件的扩展名(用切片将属于主文件名长度到总文件名长度内的元素取出来组成新的字符串)。比如若文件名是'program.sub.txt',那么 len_=11,ext='.txt'。new_name是备份文件名字。我们能看出,如果按照这个方法起备份名的话,当文件名为"