作业四:文件的copy
要求:
1.应用文件操作的相关知识,通过Python新建一 个文件gushi.txt, 选择一首古诗写入文件中
2.另外写一个函数,读取指定文件gushi.txt, 将内容复制到copy.txt中, 并在控制台输出”复制完毕”。
3.提示:分别定义两个函数,完成读文件和写文件的操作
尽可能完善代码,添加异常处理。
结果:
# -*- coding = utf-8 -*-
# @Time : 2021/7/27 18:31
# @Author : Alice
# @File : file_test.py
# @Software : PyCharm
import codecs # 引入codecs模块以便于在txt中输入汉字
# 定义写入函数
def my_write (file,s): # 参数为文件和所写入的内容
file.write(s)
file.write("\n")
# 定义计算文本行数的函数
def count (file): # 参数为文件
return len(file.readlines())
# 定义读取文本到末尾的函数
def my_read(file): # 参数为文件
while True:
content = file.readline()
return content
if len(content) == 0:
break
# 写入古诗
try:
f = codecs.open("gushi.txt","w","utf-8")
my_write(f, " 静夜思")
my_write(f, "床前明月光,")
my_write(f, "疑是地上霜。")
my_write(f, "举头望明月,")
my_write(f, "低头思故乡。")
except Exception as e:
print(e)
finally:
f.close()
# 读取上面所创建文本文件的行数, 并作记录
try:
f = codecs.open("gushi.txt","r","utf-8")
count = count(f)
except Exception as e:
print(e)
finally:
f.close()
# 创建一个copy.txt文件并且复制原有文件的内容
try:
f = codecs.open("gushi.txt","r","utf-8")
f2 = codecs.open("copy.txt","w","utf-8")
i = 0
for i in range(0,count):
f2.write(my_read(f))
i +=1
print("复制完毕,请查看copy.txt")
except Exception as e:
print(e)
finally:
f.close()
f2.close()
# 输出结果
复制完毕,请查看copy.txt