Learning Python- Intermediate course: Day 37, File handling in Python

Today we cover File-handling in Python in a lightning fast speed
Many times we need to save data into files for long-term usage. Today we will learn how to write data into a file and retrieve it.
Opening a file
Python has two types of files, text and binary. But we will now learn only about text files, which are quite popular.

How will the interpreter know when to end a line? Each line in a file has the EOL terminating character (example comma or newline character) which the interpreter reads and processes a new line..

We can open a file into four modes
  • "r" Reading mode
  • "w" Writing mode
  • "a" Appending mode
  • "r+" Both reading and writing
  • If not passed, then Python will assume it to be β€œ r ” by default.
    Syntax for opening a file We can open a file using the syntax
    file = open('myfile.txt', 'r') # Reading mode
    file = open('myfile.txt', 'a') # Writing mode
    file = open('myfile.txt', 'w') # Appending mode
    file = open('myfile.txt', 'r+') # Both reading and writing

    Note than the file name is case sensitive. So myfile.txt is not equal to Myfile.txt

    Reading from a file
    First we make a file named....say myfile.txt
    A Quick brown fox jumps over the lazy dog
    Welcome to PYTHON Programming
    In case the file doesn't exist, we get this error-
    Traceback (most recent call last):
      File "main.py", line 1, in <module>
        file = open("myfile.txt", "r") 
    FileNotFoundError: [Errno 2] No such file or directory: 'myfile.txt'
    We can read the contents of the file using the file.read() method
    file = open("myfile.txt", "r") 
    print (file.read())
    OUTPUT
    A Quick brown fox jumps over the lazy dog
    Welcome to PYTHON Programming
    We can also return a specific number of characters by adding parameters to the read method. For example
    file = open("myfile.txt", "r") 
    print (file.read(7))
    OUTPUT
    A Quick
    The value returned is a string
    file = open("myfile.txt", "r") 
    print (type(file.read(7)))
    <class 'str'>
    We can access the file line by line using the for in loop
    file = open("myfile.txt", "r") 
    for temp in file:
        print (temp)
    This syntax prints out each element of the file in lines.
    A Quick brown fox jumps over the lazy dog
    
    Welcome to PYTHON Programming
    Writing into a file
    When we write into a file, we do not need to create one. If the file in which we want to write doesn't exist, it gets automatically created.
    file = open('myfile.txt','w')
    file.write("A Quick brown fox jumps over the lazy dog.")
    file.write("Welcome to PYTHON Programming")
    file.close()
    OUTPUT (myfile.txt)
    A Quick brown fox jumps over the lazy dog.Welcome to PYTHON Programming

    The close() command terminates all the resources in use and frees the system of this particular program.

    If we want the text into two separate lines, we can use the newline \n symbol.
    file = open('myfile.txt','w')
    file.write("A Quick brown fox jumps over the lazy dog.")
    file.write("\n")
    file.write("Welcome to PYTHON Programming")
    file.close()
    OUTPUT- (myfile.txt)
    A Quick brown fox jumps over the lazy dog.
    Welcome to PYTHON Programming
    The write method overrides the file each and every time the file is opened function is called. To avoid this, we can use the append mode to add to the file.
    file = open('myfile.txt','a')
    file.write("A Quick brown fox jumps over the lazy dog.")
    file.write("\n")
    file.write("Welcome to PYTHON Programming")
    file.close()
    A Quick brown fox jumps over the lazy dog.
    Welcome to PYTHON ProgrammingA Quick brown fox jumps over the lazy dog.
    Welcome to PYTHON Programming
    So friends we have covered file handling today. From next parts onwards we will cover object oriented programming.

    29

    This website collects cookies to deliver better user experience

    Learning Python- Intermediate course: Day 37, File handling in Python