How to make a file read only using Python

In this article, we will discuss how to modify the permissions of a file and make a file read-only using Python. You may need this for automating daily activities using Python scripts.

Make a file read-only using Python

Making the file read-only will not allow the file to be rewritten again. For this, we need to modify the permissions of the file. To achieve this, we will make use of the os module in Python more specifically, the chmod() of the os module.

The coding part is extremely simple and will contain very few lines as we are not doing much but changing the permissions. Using the chmod(), we can change the mode of the path, setting it to any mode using the suitable flags from the stat module. Both these modules come inbuilt with Python and hence you need not install anything additionally.

The entire code to change the file to read-only is as follows

import os
from stat import S_IREAD

# Replace the first parameter with your file name
os.chmod("sample.txt", S_IREAD)

You can verify if the code was executed correctly by checking the file’s permissions. To do that :

  • Right-click on the file and click properties.
  • Under the attributes section, you will find the read-only checkbox checked.

I hope you found this article useful and it helped you make a file read-only. You can do more than just making the file read-only by using the appropriate flag from the stat module. You can find the appropriate flag for your use from the documentation.

Read also:

Leave a Reply

Your email address will not be published. Required fields are marked *