Python os.close() 方法



Python os.close() 方法关闭指定的 文件描述符。Python 中的文件描述符是标识符,代表操作系统内核中打开的文件,并保存在文件表中。

通常,文件描述符具有非负值。负结果表示错误或“无值”情况。它们主要用于访问文件和其他输入/输出设备,例如网络套接字或管道。

语法

以下是 Python os.close() 方法的语法:

os.close(fd);

参数

  • fd − 这是文件的 文件描述符。

返回值

此方法不返回值。

示例 1

以下示例显示了 Python os.close() 方法的用法。在这里,我们创建了一个文件描述符 'os.O_RDWR|os.O_CREAT'。然后,我们在文件中写入字符串“This is test”。之后,我们使用此方法关闭文件。

import os, sys

# Open a file
fd = os.open("foo.txt", os.O_RDWR|os.O_CREAT)
# Write one string
string = "This is test"
x = str.encode(string)
os.write(fd,x)
# Close opened file
os.close(fd)
print ("Closed the file successfully!!")

运行上述程序时,会产生以下结果:

Closed the file successfully!!

示例 2

在下面给出的示例中,我们创建了一个文件描述符 'r'。这意味着读取文件。

import os
file = "code.txt"
file_Object = open(file, "r")
fd = file_Object.fileno()
print("The descriptor of the file for %s is %s" % (file, fd))
os.close(fd)

执行上述代码时,我们得到以下输出:

The descriptor of the file for code.txt is 3

示例 3

如果文件描述符无效,则此方法会引发 EBADF 错误。

import os
# Creating a file descriptor
filedesc = os.open("code.txt", os.O_RDWR)
# closing an invalid file descriptor
os.close(filedesc + 1)

以下是上述代码的输出:

Traceback (most recent call last):
  File "/home/sarika/Desktop/chown.py", line 5, in <module>
    os.close(filedesc + 1)
OSError: [Errno 9] Bad file descriptor
os_file_methods.htm
广告