Python实现操作文档的读取,续写,覆盖重写自动备份
# coding:utf-8 import time # 备份文件的时间格式化和操作暂停使用 import shutil # 作为文件备份使用 # 需求说明 """ # 需求: # 1、可输入文档路径名称; # 2、文本自动换行输入; # 3、文本自动保存; # 4、可读取文本 # 5、可覆盖重写; # 6、若覆盖重写,则备份之前的文件。 """ # 定义读取文档函数 def read_text(text_url): with open(text_url, "r") as read: for i in read.readlines(): print i print "*" * 20,"文档内容显示结束", "*" * 20 # 定义续写文档函数 def continue_write(text_url): write_flag = 1 read_flag = 1 while write_flag == 1: print "请输入你所需要输入的内容:\n" get_new_string = raw_input() with open(text_url, "a+") as write: write.write("\n" + get_new_string) # 每次输入都进行一次换行 while read_flag == 1: print "你所输入的值已保存,并选择是否打印查看?\n" print "任意键,则表示查看!\n输入Q或q则不查看,继续输入!\n" get_search_input_key = raw_input() if get_search_input_key == "Q" or get_search_input_key == "q": continue_write(text_url) read_flag = 0 else: read_text(text_url) read_flag = 0 print "若确认要退出编辑,请输入Q或q进行退出!\n" \ "任意键,则表示接受继续输入!\n" get_input_key = raw_input() if get_input_key == "Q" or get_input_key == "q": print "GoodBye..." write_flag = 0 else: read_flag = 1 # 可以再次判定是否需要读的操作 continue # 继续循环写操作 # 定义重写文档函数 def cover_write(text_url): flag_write = 1 print "正在备份原来的文件,备份文件以系统时间和.bak作为备份文件!\n" # 引用time模块来格式化系统时间 # shutil.copy 第一个参数为原文件路径,第二个参数为备份文件路径 shutil.copy(text_url, text_url + "." + time.strftime("%Y%m%d%H%M%S") + ".bak") print "请等待2秒,作为原文件的备份时间...\n" time.sleep(2) print "现在你可以重写你的文件...\n" print "请输入你要重写的内容...\n" get_input_string = raw_input() with open(text_url, "w") as cover: cover.write(get_input_string) while flag_write == 1: print "请问是否继续输入?\n" \ "任意键则继续输入,输入Q或q则退出输入!" get_write_continue_key = raw_input() if get_write_continue_key == "Q" or get_write_continue_key == "q": flag_write = 0 else: continue_write(text_url) flag_write = 0 print "当前你的文档内容为:\n" read_text(text_url) # 系统主程序入口 if __name__ == "__main__": print r"请输入你所需要读取的文档路径和名称。" print r"例如:E:\Users\Administrator\Desktop\test.txt" print "请输入:\n" text_url = raw_input() print "\n" print "*" * 20, "文档内容显示开始", "*" * 20 # 调用查看文档函数 read_text(text_url) # 打印空格是为了与文档内容分隔 print '\n' # 打印50个*,也是为做分隔符使用 print '-*-' * 10, "进入主程序", "-*-" * 10 print "请问是否需要继续添加新内容?\n" \ "任意键表示继续输入\n" \ "输入quit,则退出!\n" \ "输入cover,则覆盖全文重新书写!系统自动会备份旧文档,请谨慎操作!" is_continue_or_cover = raw_input() if is_continue_or_cover == "quit": print "GoodBye..." elif is_continue_or_cover == "cover": cover_write(text_url) else: continue_write(text_url )
当前名称:Python实现操作文档的读取,续写,覆盖重写自动备份
文章源于:http://ybzwz.com/article/pogcdc.html