详解python中的异常和文件读写


Posted in Python onJanuary 03, 2021

Python异常

1、python异常的完整语法

try:
  # 提示用户输入一个整数
  num = int(input("输入一个整数:"))
  # 使用 8 除以用户输入的整数并且输出
  result = 8 / num
  print(result)
except ValueError:
  print("请输入正确的整数!")
except Exception as result:
  print("未知错误:%s" % result)
else:
  print("尝试成功")
finally:
  print("无论是否出现错误都会执行的代码!")
print("-" * 50)

 2、python异常的传递性

 当函数/方法执行出现异常,会将异常传递给函数/方法的调用一方,如果传递到主程序,仍然没有异常处理,程序才会被终止。

# 异常的传递性
def demo1():
  return int(input("输入整数:"))


def demo2():
  return demo1()
# 利用异常的传递性,在主程序捕获异常


try:
  print(demo2())
except Exception as result:
  print("未知错误:%s" % result)

 3、python主动抛出异常

def input_password():
  # 1. 提示用户输入密码
  pwd = input("请输入密码:")
  # 2. 判断密码长度 >= 8,返回用户输入的密码
  if len(pwd) >= 8:
    return pwd
  # 3. 如果 < 8 主动抛出异常
  print("主动抛出异常!")
  # 1> 创建异常对象 - 可以使用错误信息字符串作为参数
  ex = Exception("密码长度不够!")
  # 2> 主动抛出异常
  raise ex


# 提示用户输入密码
try:
  print(input_password())
except Exception as result:
  print(result)

Python文件读写

1、读取文件后文件指针会改变

# 1. 打开文件
file = open("test.py")
# 2. 读取文件内容
text = file.read()
print(text)
print(len(text))
print("-" * 50)
text = file.read()
print(text)
print(len(text))
# 3. 关闭文件
file.close()

 2、复制小文件写法

# 1. 打开
file_read = open("test.py")
file_write = open("test[复件].py", "w")
# 2. 读、写
text = file_read.read()
file_write.write(text)
# 3. 关闭
file_read.close()
file_write.close()

 3、复制大文件写法

# 1. 打开
file_read = open("test.py")
file_write = open("test[复件].py", "w")
# 2. 读、写
while True:
  # 读取一行内容
  text = file_read.readline()
  # 判断是否读取到内容
  if not text:
    break
  file_write.write(text)

# 3. 关闭
file_read.close()
file_write.close()

以上就是详解python中的异常和文件读写的详细内容,更多关于python 异常和文件读写的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python网络编程示例(客户端与服务端)
Apr 24 Python
asyncio 的 coroutine对象 与 Future对象使用指南
Sep 11 Python
python实现给微信公众号发送消息的方法
Jun 30 Python
计算机二级python学习教程(1) 教大家如何学习python
May 16 Python
简单了解django orm中介模型
Jul 30 Python
python禁用键鼠与提权代码实例
Aug 16 Python
解决Python计算矩阵乘向量,矩阵乘实数的一些小错误
Aug 26 Python
通过实例学习Python Excel操作
Jan 06 Python
python GUI库图形界面开发之PyQt5信号与槽的高级使用技巧(自定义信号与槽)详解与实例
Mar 06 Python
python unichr函数知识点总结
Dec 16 Python
解决import tensorflow导致jupyter内核死亡的问题
Feb 06 Python
opencv 分类白天与夜景视频的方法
Jun 05 Python
python绘制雷达图实例讲解
Jan 03 #Python
python 使用xlsxwriter循环向excel中插入数据和图片的操作
Jan 01 #Python
python安装mysql的依赖包mysql-python操作
Jan 01 #Python
python UDF 实现对csv批量md5加密操作
Jan 01 #Python
安装python依赖包psycopg2来调用postgresql的操作
Jan 01 #Python
python matlab库简单用法讲解
Dec 31 #Python
Pytorch1.5.1版本安装的方法步骤
Dec 31 #Python
You might like
用PHP实现小写金额转换大写金额的代码(精确到分)
2012/01/10 PHP
PHP生成数组再传给js的方法
2014/08/07 PHP
php通过淘宝API查询IP地址归属等信息
2015/12/25 PHP
Zend Studio使用技巧两则
2016/04/01 PHP
PHP实时统计中文字数和区别
2019/02/28 PHP
十分钟打造AutoComplete自动完成效果代码
2009/12/26 Javascript
浏览器页面区域大小的js获取方法
2013/09/21 Javascript
jquery更换文章内容与改变字体大小代码
2013/09/30 Javascript
用nodejs实现PHP的print_r函数代码
2014/03/14 NodeJs
JQuery对表单元素的基本操作使用总结
2014/07/18 Javascript
jQuery实现的一个tab切换效果内部还嵌有切换
2014/08/10 Javascript
详谈JavaScript内存泄漏
2014/11/14 Javascript
易操作的jQuery表单提示插件
2015/12/01 Javascript
jQuery与JavaScript节点创建方法的对比
2016/11/18 Javascript
利用jQuery来动态为属性添加或者删除属性的简单方法
2016/12/02 Javascript
JS解决IOS中拍照图片预览旋转90度BUG的问题
2017/09/13 Javascript
AngularJs用户登录问题处理(交互及验证、阻止FQ处理)
2017/10/26 Javascript
node.js将MongoDB数据同步到MySQL的步骤
2017/12/10 Javascript
Express进阶之log4js实用入门指南
2018/02/10 Javascript
Vue组件间通信方法总结(父子组件、兄弟组件及祖先后代组件间)
2019/04/17 Javascript
Vue + element 实现多选框组并保存已选id集合的示例代码
2020/06/03 Javascript
[31:55]完美世界DOTA2联赛循环赛 IO vs GXR BO2第一场 11.04
2020/11/05 DOTA
Python map和reduce函数用法示例
2015/02/26 Python
Python调用微信公众平台接口操作示例
2017/07/08 Python
Python基于QRCode实现生成二维码的方法【下载,安装,调用等】
2017/07/11 Python
python通过socket实现多个连接并实现ssh功能详解
2017/11/08 Python
Python将图片转换为字符画的方法
2020/06/16 Python
对python中的iter()函数与next()函数详解
2018/10/18 Python
Python实现二叉树前序、中序、后序及层次遍历示例代码
2019/05/18 Python
python中有关时间日期格式转换问题
2019/12/25 Python
证券期货行业个人的自我评价
2013/12/26 职场文书
初中校园之声广播稿
2014/01/15 职场文书
服装发布会策划方案
2014/05/22 职场文书
项目合作协议书
2014/09/23 职场文书
法定代表人身份证明书(含说明)
2014/10/02 职场文书
中学总务处工作总结
2015/08/12 职场文书