关闭程序看似很简单的操作,小伙伴们有没有想过也会出错呢?往往就是这种不容易出错的操作,真的报错后我们很难找到出错的原因,因为平时很少有人会讲这方面的问题。今天小编就python3 os关闭程序中可能会出错的点,跟小伙伴们分析一下,希望能在报错发生前避免此类操作。
os.lose():
关闭文件描述符FD。使用open()打开的文件只能由CLOSE()关闭。
但是通过os.popen()打开的文件可以用CLOSE()或os.lose()关闭。
如果我们尝试关闭使用open()打开的文件,使用os.lose(),Python将抛出TypeError。
import os fd = "GFG.txt" file = open(fd, 'r') text = file.read() print(text) os.close(file)
产出:
Traceback (most recent call last): File "C:\Users\GFG\Desktop\GeeksForGeeksOSFile.py", line 6, in os.close(file) TypeError: an integer is required (got type _io.TextIOWrapper)
注意:由于不存在文件或权限特权,可能不会引发相同的错误。
读完这篇文章会发现,os.lose()的使用是不能用open()打开的文件,os.popen()就没有这方面的限制,这点大家可得记清楚了。
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试