出于督促自己学习以及未来回顾和分享的目的,记录一下自己的学习过程。
B站视频号:BV12E411A7ZQ
ep12,13&14. 函数,文件操作和异常处理,课后作业为:
1. 应用文件操作的相关知识,通过Python新建一个文件gushi.txt,选择一首古诗写入文件中
2.另外写一个函数,读取指定文件gushi.txt,将内容复制到copy.txt中,并在控制台输出“复制完毕”
3.提示:分别定义两个函数,完成读文件和写文件的操作。尽可能完善代码,添加异常处理。
代码实现:(没有考虑太多异常情况)
# -*- coding = utf-8 -*-
# @Time : 10/11/21 11:28 am
# @Author: YS
# @File : 文件读写与异常处理练习.py
# @Software: PyCharm
# 1.新建文件gushi.txt,选择一首古诗写入文件
def write():
file = open("gushi.txt", "w") # 新建文件/覆盖
file.write("登高\n杜甫")
file.write("风急天高猿啸哀\n渚清沙白鸟飞回\n无边落木萧萧下\n不尽长江滚滚来")
# 2.写一个函数,读取指定文件gushi.txt,将内容复制到copy.txt中,并在控制台输出"复制完毕"
def read():
try:
file = open("gushi.txt") # 只读
try:
content = file.readlines() # 读取全部内容
copy = open("copy.txt", "w") # 打开copy文件
for i in content: # 注意读取出的是列表,所以需要循环写入copy
copy.write(i) # i为列表元素,是字符串,可以写入
copy = open("copy.txt") # 注意w时不能读,r时不能写
check = copy.readlines()
if len(content) == len(check):
print("复制完毕")
finally:
file.close()
except Exception as result:
print("存在错误,错误类型为:",result)
# hint:分别定义两个函数,完成读和写的操作,尽可能完善代码,添加异常处理
# 执行
write()
read()