Finally 关键字的使用 | 学习笔记

简介: 快速学习 Finally 关键字的使用

开发者学堂课程【Python 入门 2020年版: Finally 关键字的使用】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/639/detail/10415


Finally 关键字的使用

内容介绍:

一、Finally 关键字的使用

二、Finally 注意事项


一、Finally 关键字的使用

1.  第一种

file = open(‘../02-视频/03-练习3.mp4’,‘rb’)//只读二进制形式

while True:

content = file.read(1024)

if not content:

break

print(content)

print('文件被关闭了')

file.close()

利用 py 也可以运行命令,Ctrl+c 可以停止运行,但是文件未关( close )使用以下方法可关闭文件。但如果点击左侧红点方块,则会无法关闭文件。

2. 第二种

file = open(‘../02-视频/03-练习3.mp4’,‘rb’)//只读二进制形式

try:

while True:

Content = file.read(1024)

if not content:

break

print(content)

finally://最终都会被执行的代码

print('文件被关闭了')

file.close()

 

二、Finally 注意事项:

def  test(a,b)

x=a+b

return x  

//一旦 return 就表示函数结束,后面代码就不会被执行。

return ‘hello’

//这段代码不会被执行,一般情况下,一个函数最多只能执行一个 return 语句,特殊情况( finally 语句)下,一个函数可能会执行多个 return 语句

例如:

def demo(a,b):

try:

x=a/b

except ZeroDivisionError:

print('除数不能为0')

return  x

print(demo(1,2)) //结果为 0.5

print(demo(1,0))//运行结果为除数不能为 0,x 的值不存在,所以不能执行。

解决方式如下:(添加 else )

def demo(a,b):

try:

x=a/b

except ZeroDivisionError:

print('除数不能为0') //用 return 就可以不用 else.

else:

return  x

print(demo(1,2)) //结果为 0.5

print(demo(1,0))//运行结果为除数不能为 0

//用 return 就可以不用 else.

return('除数不能为0')

return x

def demo(a,b):

try:

x=a/b

except ZeroDivisionError:

Return’除数不能为0'

else:

return x

finally:

return 'good'

print(demo(1,2))

//结果为 good ,如果函数里有 finally,finally 里的返回值会覆盖之前的返回值,两个 return 都会被运行。

print(demo(1,0)) 结果也为 good

相关文章
|
1月前
|
C#
29.C#关键字throw初步学习
29.C#关键字throw初步学习
16 0
|
4月前
|
Python
使用try-except-finally语句的例子。
使用try-except-finally语句的例子。
|
4月前
|
存储 缓存 IDE
细琢磨,try catch finally 执行顺序与返回值
细琢磨,try catch finally 执行顺序与返回值
40 0
|
8月前
|
安全
synchronized关键字 - - 三种使用方法
synchronized关键字 的 三种使用方法: 第一种 synchronized(对象) { 临界区 } 第二种 加在 非静态方法 上 第三种 加在 静态方法 上
43 0
final 和 finally 关键字
final 和 finally 关键字
47 0
Java基础异常中的finally关键字
Java基础异常中的finally关键字
Java基础异常中的finally关键字
try-catch-finally结构的finally语句 一定会执行吗? fianlly语句遇到System.exit(0);一定不执行吗?
try-catch-finally结构的finally语句 一定会执行吗? fianlly语句遇到System.exit(0);一定不执行吗?
140 0
try-catch-finally结构的finally语句 一定会执行吗? fianlly语句遇到System.exit(0);一定不执行吗?
|
存储 安全 Java
深入解析 synchronized 关键字
最近看了几篇 synchronized 关键字的相关文章,收获很大,想着总结一下该关键字的相关内容。
深入解析 synchronized 关键字
try-catch-finally 语句执行笔记
try-catch-finally 语句执行笔记
108 0
|
机器学习/深度学习 Java 编译器
Java关键字之try、catch、finally
Java try、catch、finally 关键字
1218 0