Table of Contents
The open() function opens the file (if possible) and returns the corresponding file object.
The syntax of open() is:
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
1. open() Parameters
- file – path-like object (representing a file system path)
- mode (optional) – mode while opening a file. If not provided, it defaults to
'r'(open for reading in text mode). Available file modes are:ModeDescription'r'Open a file for reading. (default)'w'Open a file for writing. Creates a new file if it does not exist or truncates the file if it exists.'x'Open a file for exclusive creation. If the file already exists, the operation fails.'a'Open for appending at the end of the file without truncating it. Creates a new file if it does not exist.'t'Open in text mode. (default)'b'Open in binary mode.'+'Open a file for updating (reading and writing) - buffering (optional) – used for setting buffering policy
- encoding (optional) – the encoding format
- errors (optional) – string specifying how to handle encoding/decoding errors
- newline (optional) – how newlines mode works (available values:
None,' ','\n','r', and'\r\n' - closefd (optional) – must be
True(default); if given otherwise, an exception will be raised - opener (optional) – a custom opener; must return an open file descriptor
2. Return Value from open()
The open() function returns a file object which can used to read, write and modify the file.
If the file is not found, it raises the FileNotFoundError exception.
3. Example 1: How to open a file in Python?
# opens test.text file of the current directory
f = open("test.txt")
# specifying the full path
f = open("C:/Python33/README.txt")
Since the mode is omitted, the file is opened in 'r' mode; opens for reading.
4. Example 2: Providing mode to open()
# opens the file in reading mode
f = open("path_to_file", mode='r')
# opens the file in writing mode
f = open("path_to_file", mode = 'w')
# opens for writing to the end
f = open("path_to_file", mode = 'a')
Python’s default encoding is ASCII. You can easily change it by passing the encoding parameter.
f = open("path_to_file", mode = 'r', encoding='utf-8')
Recommended Reading: Python File Input/Output
Related posts:
Python Program to Remove Duplicate Element From a List
Node.js vs Python for Backend Development
Python ord()
Python frozenset()
Python list()
Python Program to Append to a File
Python Program to Get Line Count of a File
Python isinstance()
Python classmethod()
Python Program to Find Factorial of Number Using Recursion
Python Program to Find Hash of File
Python Program to Make a Simple Calculator
Python for Loop
Python Program to Print the Fibonacci sequence
Python List extend()
Python String rindex()
Python Program to Check If a List is Empty
Python Dictionary items()
Python Program to Create a Long Multiline String
Python Objects and Classes
Python String startswith()
Python Statement, Indentation and Comments
Python String count()
Machine Learning Mastery with Python - Understand your data, create accurate models and work project...
Python String strip()
Python Deeper Insights into Machine Learning - Sebastian Raschka & David Julian & John Hearty
Python bytes()
Python String zfill()
Python property()
Python Decorators
Python strptime()
Python print()