A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://www.tutorialspoint.com/python/os_closerange.htm below:

Python os.closerange() Method

Python os.closerange() Method

The Python os.closerange() method closes all file descriptors from fd_low to fd_high. Here, fd_low is the lower boundary range of the file descriptor to be closed, whereas fd_high is the higher boundary range of the file descriptor to be closed. Note that fd_low is inclusive whereas fd_high is exclusive.

File descriptors in Python are identifiers that represents the open files in the os kernel and are kept in a table of files. Typically, file descriptors have non-negative values. Negative results denote an error or a "no value" condition. The main things they assist with are accessing files and other input/output devices like network sockets or pipes.

The os.closerange() method is more efficient than os.close() method because it allows flexibility in the range of file descriptor.

Note: If any error occurs while closing the file descriptor in the given range, it is ignored. This method was introduced in Python version 2.6.

Syntax

Following is the syntax of Python os.closerange() method −

os.closerange(fd_low, fd_high);
Parameters Return Value

This method does not return any value.

Example 1

The following example shows the usage of Python os.closerange() method. Here we are creating a file descriptor 'os.O_RDWR|os.O_CREAT'. Then we write a string "This is test" in the file. Thereafter, we are closing the file using this method.

import os, sys
# Open a file
fd = os.open( "code.txt", os.O_RDWR|os.O_CREAT )
# Write one string
string = "This is test"
x = str.encode(string)
os.write(fd, x)
# Close a single opened file
os.closerange( fd, fd)
print ("Closed all the files successfully!!")

This would create given file foo.txt and then write given content in that file.This will produce the following result −

Closed all the files successfully!!
Example 2

File descriptors with values 0 and 1 are used as the standard input and output, respectively.

In here, we are passing the standard range '0' as fd_low and '1' as fd_high as an argument to the closerange() method.

import os
filedesc = os.open( "code.txt", os.O_RDWR|os.O_CREAT )
os.closerange(0,1)
print ("Closed all the files successfully!!")

While executing the above code we get the following output −

Closed all the files successfully!!
Example 3

In the example given below we are creating a file descriptor 'r'. This means reading the file.

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.closerange(fd,fd)

Following is an output of the above code −

The descriptor of the file for code.txt is 3
Example 4

The file descriptor with the value 2 is the standard error.

Here, we are passing the value '2' as fd_high as an argument to the closerange() method.

import os
filedesc = os.open( "code.txt", os.O_RDWR|os.O_CREAT )
os.closerange(0,2)
print ("Closed all the files successfully!!")

Output of the above code is as follows −

Traceback (most recent call last):
  File "/home/sarika/Desktop/chown.py", line 4, in 
    print ("Closed all the files successfully!!")
OSError: [Errno 9] Bad file descriptor
Exception ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>
OSError: [Errno 9] Bad file descriptor

os_file_methods.htm


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4