题目:
1.应用文件操作的相关知识,通过Python新建一个文件gushi.txt,选择一首古诗写入文件中
2.另外写一个函数,读取指定文件gushi.txt,将内容复制到copy.txt中,并在控制台输出"复制完毕”。
3.提示:分别定义两个函数,完成读文件和写文件的操作尽可能完善代码,添加异常处理。
我的代码:

# -*- codeing = utf-8 -*-
# @Time : 2021/1/20 20:37
# @Author : 贾维斯
# @File : zuoye4.py
# @software : PyCharm# 1.应用文件操作的相关知识,通过Python新建一个文件gushi.txt,选择一首古诗写入文件中
# 2.另外写一个函数,读取指定文件gushi.txt,将内容复制到copy.txt中,并在控制台输出"复制完毕”。
# 3.提示:分别定义两个函数,完成读文件和写文件的操作尽可能完善代码,添加异常处理。def write():                #古诗写入f = open("gushi.txt","w",encoding='utf-8')f.write("""声声慢·寻寻觅觅
[宋] 李清照
寻寻觅觅,冷冷清清,凄凄惨惨戚戚。
乍暖还寒时候,最难将息。
三杯两盏淡酒,怎敌他、晚来风急?
雁过也,正伤心,却是旧时相识。满地黄花堆积。憔悴损,如今有谁堪摘?
守着窗儿,独自怎生得黑?
梧桐更兼细雨,到黄昏、点点滴滴。
这次第,怎一个愁字了得!""")f.close()print("古诗写入完毕\n")time.sleep(1)def read(read_flag):        #古诗读取f = open("gushi.txt","r",encoding='utf-8-sig')for i in range(0,11):read_print = f.readline()print(read_print, end="")
#        print("{:>{}}".format(read_print,30),end = "")print("\n")time.sleep(1)print("读取完毕")time.sleep(1)read_flag += 1return read_flagf.close()def copy(copy_flag):                 #文件复制f = open("gushi.txt","r",encoding='utf-8-sig')c = open("copy.txt", "w", encoding='utf-8-sig')lines = f.readlines()for line in lines:c.write(line)f.close()c.close()print("\n复制完毕\n")time.sleep(1)copy_flag += 1return copy_flag#主函数
import time
import os
try:# os.remove("gushi.txt")read_flag = 0copy_flag = 0f = open("gushi.txt","r",encoding='utf-8-sig')write()try:read_flag = read(read_flag)if read_flag == 0:print("读出失败")time.sleep(1)copy_flag = copy(copy_flag)if copy_flag == 0:print("复制失败")time.sleep(1)finally:f.close()print("程序执行完毕")time.sleep(1)
except Exception as result:print(result)print("程序异常")time.sleep(1)write()

运行结果:

总结:
1.学会了对文件的操作,包括读写,打开格式
2.文件读写乱码问题:
修改前:

f = open("gushi.txt","r")

修改后:

f = open("gushi.txt","r",encoding='utf-8-sig')

3.学会了对错误原因的排除,通过try,finally,except等结构
例程:

#try ... finally 和嵌套
import time
try:f = open("text1.txt","r")try:while True:content = f.readline()if len(content) == 0:breaktime.sleep(2)print(content)finally:f.close()print("程序执行完毕")
except Exception as result:print("发生异常")

python学习日常-----作业(4)相关推荐

  1. Python学习day5作业-ATM和购物商城

    Python学习day5作业 Python学习day5作业 ATM和购物商城 作业需求 ATM: 指定最大透支额度 可取款 定期还款(每月指定日期还款,如15号) 可存款 定期出账单 支持多用户登陆, ...

  2. Python学习day5作业

    目录 Python学习day5作业 ATM和购物商城 1. 程序说明 2. 基本流程图 3. 程序测试帐号 4. 程序结构: 5. 程序测试 title: Python学习day5作业 tags: p ...

  3. Python学习day2作业总结

    2019独角兽企业重金招聘Python工程师标准>>> 为了以后更好更快速的复习,此博客记录我对作业的总结.对于基础作业,我认为最重要的是过程,至于实现是不是完美,代码是不是完美,虽 ...

  4. Python学习(作业第一周)

    日期:2019年2月26日 版本:python 3.7 第一题:Hello World ‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬ ...

  5. python学习日常-编码与字符串格式化

    python编码也是遵循计算机技术的编码的,英文编码还是遵循ascii码,中文编码遵循gb2312,都遵循的是utf-8编码. 值得注意的是几个函数,ord("a"),是查询a的u ...

  6. 老男孩python学习_day002作业

    1. 判断下列逻辑语句的True,False. (1) 1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6   ...

  7. 老男孩python学习_day004作业

    看代码写结果: 1.    a=[1,2,3,6,"dfs",100] s=a[-1:] print (s) 结果:[100] 2.    s=a[-1:0:-1] print(s ...

  8. python atm作业详解_Python学习day5作业-ATM和购物商城

    Python学习day5作业 Python学习day5作业 ATM和购物商城 作业需求 ATM:指定最大透支额度 可取款 定期还款(每月指定日期还款,如15号) 可存款 定期出账单 支持多用户登陆,用 ...

  9. 日常python学习笔记DAY 8---集合运算(交集、并集、超集和差集)

    日常python学习笔记DAY 8-集合运算(交集.并集.超集和差集) ''' 集合的运算有交并超差以及堆成差集合 ''' #求交集 & .intersection() .intersecti ...

  10. python 学习第七讲作业 2020-12-29

    作业: 代码: flag = True flag2 = True while flag:str1 = input('最近学习了吗?yes/no:')# 对输入结果进行判断if str1 =='yes' ...

最新文章

  1. 聊天机器人之需求分析和流程介绍
  2. 二十八、动态分区分配算法
  3. 收银机打印数据截取_智能收银机助力社区零售,挖掘消费新潜力
  4. 2017年10月07日普及组 蚂蚁
  5. 关于unix下使用tar的一些常用技巧
  6. 【代码笔记】iOS-UILable电子表显示
  7. ubuntu16.04 离线安装docker ce
  8. mysql 5.5 编译安装教程,Centos6下mysql 5.5.* 编译安装步骤详解
  9. 【转贴】没有div没有float没有clear没有hack的超强CSS布局
  10. mysql 介于两个日期函数_帮忙看一上这个mysql函数,用来返回两个日期之间的年数...
  11. GD32F303修改外部25M晶振
  12. 各大快递电子面单---Api接口(顺丰、快递鸟、菜鸟)
  13. 项目设计:基于STM32的指纹/刷卡的门禁/考勤/智能小区管理系统
  14. Go语言查缺补漏ing Day1
  15. 苹果手机iCloud备忘录删除怎么恢复
  16. An End-to-End Steel Surface Defect Detection Approach via Fusing Multiple Hierarchical Features
  17. BK06-部署蓝鲸智云社区版5.1-遇到的坑和解决方案
  18. php下拉框css样式,纯CSS实现的下拉菜单
  19. 1718 Cos的多项式
  20. BuKu web18 秋名山车神

热门文章

  1. 数据分析-用python分析中国五大城市的PM2.5值(ols建立回归模型)
  2. 图像处理 图像识别 模式识别 分类检测
  3. 学计算机科学与技术的考研方向,计算机科学与技术考研方向?
  4. PyQt5 关于消息盒子QMessageBox 不显示消息盒子且出现内存不足的问题
  5. linux读usb蓝牙数据,嵌入式Linux下USB蓝牙设备驱动.pdf
  6. 错过2021牛股?2022ESG投资预测拿住
  7. 【MIUI9】小米平板1MIPAD1欧版ROM历史ROM下载地址-另附挥泪典藏版V9系统
  8. ORA-1652: unable to extend temp segment by 128 in tablespace TEMP
  9. EDI REMADV报文详解
  10. 新购电脑已装显卡,但控制面板里找不到“NVIDIA 控制面板”怎么办?