1. try except语句的用法,用来检测一段代码内出现的异常并将其归类输出相关信息,首先是try: 被检测代码段  except Exception[as reason]: 相关信息,举例说明:

>>> try:

f = open('该文档不存在')

print(f.read())

f.close()

except OSError:

print('文件出错了T_T')

文件出错了T_T

当然,我们也可以在except Exception 加上 as reason将程序检测到的出错的信息输出,举例说明:

try:

f = open('该文档不存在')

print(f.read())

f.close()

except OSError as reason:

print('文件出错了T_T')

print('出错原因是%s'%str(reason))

文件出错了T_T

出错原因是[Errno 2] No such file or directory: '该文档不存在'

当然,可以增加多个except语句,提取代码段不同的异常问题,举例说明:

try:

1 + '1'

f = open('该文档不存在')

print(f.read())

f.close()

except OSError as reason:

print('文件出错了T_T')

print('出错原因是%s'%str(reason))

except TypeError as reason:

print('求和出错了T_T')

print('出错原因是%s'%str(reason))

求和出错了T_T

出错原因是unsupported operand type(s) for +: 'int' and 'str'

但是需要注意程序检测到第一个异常后即停止运行,在except中找到相应输出语句,如果except未包含时,则直接曝出异常,

try:

fishc

1 + '1'

f = open('该文档不存在')

print(f.read())

f.close()

except OSError as reason:

print('文件出错了T_T')

print('出错原因是%s'%str(reason))

except TypeError as reason:

print('求和出错了T_T')

print('出错原因是%s'%str(reason))

Traceback (most recent call last):

File "D:/Python34/test/033/01.py", line 2, in fishc

NameError: name 'fishc' is not defined

另外,可以将Exception信息放在一个except语句下面,举例说明:

try:

fishc

1 + '1'

f = open('该文档不存在')

print(f.read())

f.close()

except (OSError,TypeError,NameError) as reason:

print('出错了T_T')

print('出错原因是%s'%str(reason))

出错了T_T

出错原因是name 'fishc' is not defined

甚至except语句连Except都不要了,则程序检测到异常就会执行except下的语句,但不推荐使用:

try:

fishc

1 + '1'

f = open('该文档不存在')

print(f.read())

f.close()

except:

print('出错了T_T')

出错了T_T

2. try finally语句,一般是在try except语句下面补充,用于程序检测到异常后仍能执行的语句:

try:

fishc

1 + '1'

f = open('新文档.txt',wt)

except (OSError,TypeError,NameError) as reason:

print('出错了T_T')

print('出错原因是%s'%str(reason))

finally:

f = open('新文档.txt','wt')

f.write('我爱鱼C论坛!')

f.close()

f = open('新文档.txt','rt')

print(f.read())

f.close()

出错了T_T

出错原因是name 'fishc' is not defined

我爱鱼C论坛!

3. raise语句,raise Exception,引入一个异常,举例说明:

>>> raise NameError

Traceback (most recent call last):

File "", line 1, in raise NameError

NameError

>>> raise ZeroDivisionError('除数是0')

Traceback (most recent call last):

File "", line 1, in raise ZeroDivisionError('除数是0')

ZeroDivisionError: 除数是0

python中try怎么用_Python中try语句的用法相关推荐

  1. python中函数的作用域_Python中的函数作用域

    在python中,一个函数就是一个作用域 name = 'xiaoyafei' def change_name(): name = '肖亚飞' print('在change_name里的name:', ...

  2. python列表怎么写文件_python中以字典为元素的列表怎么写入文本文件

    python如何将列表中的元素添加进字典纵然被命运的铁蹄狠狠践踏,也顽强地长出自己的根芽. 录入自己和另一个人的名字的汉语拼音简写,然后依据标识符中字母的数值两个人,一颗心,依偎的不是爱情而是那小温暖 ...

  3. python中赋值语句的作用_python中return可以使用赋值语句吗?

    在python中,有各种不同类型的语句.一个python程序是由模块构成的;一个模块由一条或多条语句组成;每个语句由不同的表达式组成;表达式可以创建和操作对象.下面来看看python中的语句. 赋值语 ...

  4. python中round函数参数_python中关于round函数的小坑

    round函数很简单,对浮点数进行近似取值,保留几位小数.比如 >>> round(10.0/3, 2) 3.33 >>> round(20/7) 3 第一个参数是 ...

  5. python里的join方法_python中join()方法介绍

    描述 Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串. 语法 join()方法语法: str . join ( sequence ) 参数 sequence -- ...

  6. python中反斜杠_Python中的正斜杠/与反斜杠\

    知识点: 1. "/"左倾斜是正斜杠,"\"右倾斜是反斜杠,可以记为:除号是正斜杠 2. 对于目录分隔符,Unix和Web用正斜杠/,Windows用反斜杠\. ...

  7. python中的元类_Python中的元类(metaclass)

    提问者自称已经掌握了有关Python OOP编程中的各种概念,但始终觉得元类(metaclass)难以理解.他知道这肯定和自身有关,但仍然觉得不太明白,希望大家可以给出一些实际的例子和代码片段以帮助理 ...

  8. python中end 1 意思_python中“end=”是什么意思?_后端开发

    c语言fopen函数的用法_后端开发 在c语言中可以使用"fopen()"函数打开一个文件,该函数用于打开一个文件,其语法是"open("file a" ...

  9. python 通过ip获取城市_python中通过客户端IP拿到所在城市和当地天气信息—附带项目案例...

    首先,需求分析: 1.拿到客户端IP 2.通过IP拿到客户端所在地区 3.通过地区拿到当地天气 4.整合功能,展示给用户 第一步,如何拿到用户IP 我们以Django环境为例 # 客户端的请求,IP信 ...

  10. python怎么用第三方库_python中第三方库的下载方法

    1.最常用:在命令行中输入  pip install "库名称"  例如 pip install gensim 查看pip的命令集: pip uninstall "库名& ...

最新文章

  1. Java基础篇:常用类
  2. shllter自动和手动实例
  3. Git SSH Key 生成步骤
  4. 查看这些有用的ECMAScript 2015(ES6)提示和技巧
  5. Oracle if else if for case
  6. 创建一个动物类 java_使用java面向对象创建动物类并输出动物信息
  7. mysql日期比较timestamp_Mysql中的Datetime和Timestamp比较(转载)
  8. UI标签库专题十三:JEECG智能开发平台 ckfinder(ckfinder插件标签)
  9. android 滑动缩放监听,基于Android的ViewPager动画特效实现页面左右滑动效果(实现缩放...
  10. redis string底层数据结构
  11. 神经网络可视化工具Netron
  12. 网页版MSDOS的实现网站
  13. Spring入门学习
  14. C++递归完成汉诺塔游戏(超详细解读)
  15. 针对支付宝-当面付实现的个人支付
  16. 在matlab中ln10,ln函数(ln在函数中等于多少)
  17. Real-time signal
  18. 计算机类sci查重,SCI科研写作:国自然标书查重方法
  19. 常用企业微信开源SCRM对比
  20. Prometheus实战--Uber背书的存储解决方案M3

热门文章

  1. python 百度云文字识别 proxy_Python基于百度AI的文字识别的示例
  2. echarts隐藏掉一条曲线,并且tooltip提示框中不显示
  3. Windows 10“创作者更新”改进了高DPI缩放支持
  4. celery beat KeyError scheduler
  5. Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionExceptio
  6. c# image转换为bitmap_WPF将BitmapImage图片对象转换为Bitmap图片对象
  7. 打印服务IP设置方案
  8. React中正常显示HTML---dangerousSetInnerHtml
  9. JS之宏任务与微任务
  10. Hexo yilia 主题添加 valine 评论系统