18-异常

Posted tiantiancode

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了18-异常相关的知识,希望对你有一定的参考价值。

lesson18异常
#视频1异常

#视频2 异常处理

 1 try:
 2     print(----------1-----)
 3     # print(c)
 4     a = 11
 5     print(12121212)
 6     # a()
 7     print(----------2--------)
 8 
 9 except Exception as result:
10     print(捕获到异常,执行这里)
11     print(result)
12 # except TypeError as info:
13 #     print(info)
14 # except NameError:
15 #     print(‘代码错了‘)
16 else:
17     print(try中没错误,执行这里)
18 finally:
19     print(不管try中有没有没错误,执行这里)
20 
21 print(33333333)


#运行:
----------1-----
12121212
----------2--------
try中没错误,执行这里
不管try中有没有没错误,执行这里
33333333

 

--------------------------------------------------------------------
#视频3 自定义异常

1 #自定义异常  必须继承exception
2 class MyError(Exception):
3     pass
4 
5 try:
6     raise TypeError     #主动抛出异常
7 except TypeError:   #NameError
8     print(报错了)

#运行:
报错了

 

 

--------------------------------------------------------------------
#视频4 断言
assert ==1
返回true 不报错
返回false 报错--assertionerror

--------------------------------------------------------------------
#视频5 推导式

 1 #推导式
 2 li =[1,2,3,4,5]
 3 range(1,10)
 4 
 5 li1=[x for x in range(1,20)]#列表推导式
 6 li3=[5*x for x in range(1,20)]#列表推导式
 7 
 8 li2=[]
 9 for i in range(1,11):
10     li2.append(5*i)
11 
12 l3=[i if i%2 ==0 else 0 for i in range(1,11)]  #三目+列表推导
13 l4=[i for i in range(1,11)if i%2 ==0]     #返回偶数
14 
15 dic={i:j for i,j in enumerate(abcdefg)}   #字典 返回下标和元素
16 
17 print(li1)
18 print(li3)
19 print(li2)
20 print(l3)
21 print(l4)
22 print(dic)

#运行:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
[5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95]
[5, 10, 15, 20, 25, 30, 35, 40, 45, 50]
[0, 2, 0, 4, 0, 6, 0, 8, 0, 10]
[2, 4, 6, 8, 10]
{0: ‘a‘, 1: ‘b‘, 2: ‘c‘, 3: ‘d‘, 4: ‘e‘, 5: ‘f‘, 6: ‘g‘}

 

 

--------------

作业:

 1 # 作业:
 2 # 1,自己构造一个报错的场景,并模仿课堂进行一个报错分析
 3 # 要求:报错的类型,报错的原因,报错的代码,和报错的行
 4 #
 5 # 2,结合异常处理,确保打开文件后的正常关闭
 6 # 要求:用open直接打开一个文件,然后write进行写入,假设在写入的
 7 # 时候可能会报错,写段代码确保
 8 # 报错的情况下依然可以把文件
 9 # 关闭掉。
10 
11 f = open(ggg.txt, w+)
12 try:
13 
14     f.write(hello python1111111)
15 
16 except Exception as result:
17     print(捕获到异常,执行这里)
18     print(result)
19 else:
20     print(文件写入成功)
21 finally:
22     print(不管try中有没有没错误,执行这里)
23     f.close()

 

以上是关于18-异常的主要内容,如果未能解决你的问题,请参考以下文章

getApplicationContext给出空指针异常[重复]

使用实体框架迁移时 SQL Server 连接抛出异常 - 添加代码片段

异常和TCP通讯

片段中的Android致命异常

译文:18个实用的JavaScript代码片段,助你快速处理日常编程任务

mvn命令异常:An error has occurred in Javadoc report generation: Unable to find javadoc command异常已解决(代码片段